Here are some suggestions made by other people in another forum;
I would like to see templates of sort, perhaps a visual editor.
Take DashCode for example.
 I'm post-processing dxpacks from outside DX to merge external scripts, modify scripts with #define/#ifdef/#ifndef, switch script components to release mode, etc. I'm using another instance of DX in a VM to export so I don't have to remove the dev version, load the final dxpack, export and then go back to the dev version. Being able to export the resulting dxpack directly from my build script will save me a lot of time!
 You can create a "controller" component that do all the work and receive other component events from there, but it would be cleaner to have that in the main script. It will save all the 1-line functions to forward DX events to the controller.
 Last time I checked the only Zip component universally available was the zip folder support in Windows, but the license doesn't allow third party use and it showed a progress dialog when unzipping. Exposing zip/unzip functions like in Yahoo widgets would be nice.
I think that there are several improvements that can be made which fall into 4 main categories:
2. Additional functionality
3. Developer tools
4. Ease of use tools
In addition to those already mentioned ...
Fix AX control bugs e.g. ...
Control.Border = False is broken on the DX Edit control
Sometimes controls don't appear on loading until they/their parent is moved
On crashing sometimes a duplicate of the last object in the navigator is created. This causes subsequent problems and crashing until manually removed from the theme2.ini file
2. Additional functionality
Some simple things could be added like improving tooltips
a. Allow a custom background
b. Allow custom font
c. Control over positioning relative to cursor
d. Maximum width/auto wrapping
3. Developer tools
Improve the Object Navigator
a. Ensure that it defaults to a sensible font so I don't have to manually uninstally fonts like Batang he to get it to display correctly / allow font choice to be saved globally
b. Make viewing more sensible - allow a tree view so children can be hidden unless I want to see them
c. Allow colour coding so I can quickly and easily find a specific object
d. Fix sorting - if I click to sort using a column how do I get it back to the default view without closing and reopening the Navigator
e. Allow me to exlude certain objects from export. In scripting objects are often created dynamically (e.g. calendars) and it would be easier to allow objects with certain names to be excluded when you "Select All"
4. Ease of use tools
I think that there have been a lot of valid points made above and I like the concept that you presented sViz, but I think we need to step back and make sure that this model is extensible.
Let me explain further ...
The key thing is that we have templates already. That is one of the key benefits of DX, in that you can load widgets and tweak them. These are our templates!
For example here is a perfectly functional calendar and here is the article explaining how to use it.
Whilst this is 5 years old it is still totally valid today.
Likewise, if you want weather then here is an equally old, but equally functional object.
What we need is an agreed standard for how we publish and utilise these within DesktopX.
Once we have this then what sViz proposed in the video is totally doable and extensible, because new "template" items can be added in a structured way (probably a tree/dropdown rather than icons because this is more flexible).
Users can create their own template item whether this is a complex set of objects, or a simple template for a text object or mask as per the video.
A standard implementation method is what will be required to sure that object names are not duplicated. Though clever use of programming (Object.Parent and Object.Name) we can ensure that all object names are relative and therefore it would be easier when cloning (using a method different to the current one).
Finally I believe we need a standard way to interact with the user. These template objects need to know where to get and put information in a structured way. Several years ago I proposed a CUI (which stood for common user information), which basically was an XML file when standard information was stored (Example of the draft
OK, I think that's enough of a document for now.
I'd be delighted to assist in the development of this sort of thing. It's just the sort of thing that would encourage me to spend more time with DesktopX. However, what I (and I expect other developers) need is some reassurance that this sort of hing would be implemented and that the time spent working on this wouldn't be in vain.
Look forward to hearing what other people think.
Good idea. However, why don't we take this a step further and have "Global" scripts that interact with the development environment rather than being "local to an object/a theme.
Think of it as script plugins. e.g. it would be very easy to write a script to draw a grid on the desktop. It would be very easy to write a script to move any given (or in fact all) objects to snap to a grid. What if these scripts could just be run and implemented based on events occuring within the development environment. e.g. Development_OnStart (draw grid), Development_OnObjectMove (snap to grid) etc etc.
Nuts.. that was one i really want - in Acad programming there was a way to "place" items into the dialog box.
Things like "ROW" "COLUMN" "WIDTH" etc. Being able to modify this screen even with a layout file of some sort would be awesome.
One other item that i would love to be able to work on is a "dynamic" change to the task icon, so i could make a gadget with say a weather icon that shows the current weather in the icon, or even the current temp.
I think there are TONS of posts out there with bug fixes and issues that need addressed. I just spotted this thread, and will have to work out some new ideas. Most have to do with ease of re-use of code, componants, etc.
Also.. .one of the major things is to have a much easier way to access "code". I had plans for this with desktopx.info but that just didnt work out, the idea of a "script repository" and an "integrated" way to import these into dx EASILY would make coding so much better. Things like Read/Write/Create INI Files, reading drive space, etc. I know a lot of things have been made into DLL's but these are not easily updated, a web-based repository would be aweome, and having this supported by SD would make it that much better. Id be more than willing to help put together some scripts, etc.
Fully functional templates: Like the ones ID posted, where all the basic work is done and you just need to modify the look, or if you know how, modify the code and add more functions. The code for these templates should not be neglected either; they should be fully commented, streamlined, and easy to understand if you have basic knowledge of vbscript.
Component templates: Much like the ones we have in the DesktopX tutorial folder; rotating object, growing object, glowing object. Stuff that can be imported and used as part of a larger theme or widget. You could use the component as is or just take the script and use that.
#2 Pre-Configured Objects
This is pretty much to reduce the amount of time a user spends making choices, configurations, combinations of choices and configurations, and choices between combinations of choices and configurations.
The basic idea is to have a palette with virtually every conceivable object a user would want just one click away from creation. That means if I click on the button marked ‘folder shortcut’, it will create an object that is pre-configured and only needs an image & target. If I click on the button marked ‘object with states’, it will create an object that has the mouse over, mouse away, mouse down, and mouse up states already added. If I click on the button marked ‘mask’, it will create an object with the appropriate image (a square one, not round) for use as a mask. If I click on the button marked ‘text object’, it will create a text object (instead of an image object which I have to change into a text object.)
If I click on the button marked… well, here’s a video of what I mean:
#3 Limited Builder Mode
I think DX needs a mode that bridges the gap between client and builder. A mode with training wheels, if you will.
So you’d have Client which is for end-users, Limited Builder Mode that’s for end-users turned new builders, and then pure no-holds-barred Builder Mode for users more familiar with the DX builder environment.
The limited builder mode would be more intuitive than the freestyle builder mode. This might be where you could implement #2.
It might also have some kind of central editor like ID mentioned. The editor could have quick access to only the most frequently modified properties of an object: name, parent, group, size, x/y coordinates, image (or text), visible, movement, activation—kinda like a revamped object navigator/object list. I imagine the information in the editor would change depending on which object you’re interacting with, e.g., if you click on an object, its information would show up in the editor and you can make quick changes without having to open up a properties window. I’ve actually made an object that does that, though, it works on mouse over instead of click, and it doesn’t work for child objects.
#4 An undo function
I can’t tell you how irksome it is to have to redo mistakenly deleted objects.
#1 System tray & and other fixes
Fixing several of the bugs mentioned on the forums and bringing back the system tray.
#2 Expand the Script Wizard
We have script wizards for most activeX objects but I’d like to see one for regular objects. Take all the object/system callbacks listed in the Developer’s guide and list them in a script event wizard.
#3 Expand Auto Complete
DX auto completes Functions and Subs. Couldn’t it to also auto-complete Loops and Conditionals?
That’s all for now. A few weeks back I was doing some scripting and I thought "man, I wish DX could access such and such via script" … now I can’t remember what that was
Also, the keyboard shortcut for select all (ctrl+A) does not work in the Script Editor. It seems to me that above any new feature, it would be really nice to see some of the current features fixed and working properly.
Much more experienced DXers than I would know more about the kinds of powerful new functions DX needs, so accessibility and ease of use is my main focus with DX. It seems to me the root of this is in the interface. Think of any program and its interface is generally where you would gain access to all its functions--everything in plain view and a few clicks a way. DX has NO interface. It has a systray icon, r-click menus, properties windows, properties windows within properties windows, tabs, and tabs within tabs. DesktopX is a great program, quite revolutionary in my humble opinion, but it is time for reboot. While the concept of using nothing but the desktop (and individual properties windows) as the work environment has its perks, it falls short on so many levels. Such as the central/visual editor several people in this thread expressed a desire for. Such as having grids, guidlines, etc. Such as having a quick-creation object pallette.
DX already does a whole helluva lot; the problem is a whole helluva lot of people don't know how to make it do what it does.The only limitation should be the user's imagination, and not the complicated, frustrating process of realizing his or her idea. Give the user quick access to the tools at their disposal, and you simplify the creation process. Simplify the creation process, and you free up the user's time to learn new tricks and actually get creative.
An intuitive user interface seems like the most logical solution to the lack of accessibility, and I think Stardock should strongly consider implementing any new aids in this format. DX does not have to become an inside-the-box program but it does need a more developmentally-friendly environment. I think a set of DX Builder widgets, or one super-console with access to all the developer tools/aids mentioned here could be a step in the right direction.
Another idea I had was to have checkboxes in the object navigator to make it easier to select specific objects, instead of doing ctrl+click or ctrl+unclick.
Often switching work between dozens of different projects, I have to keep browsing to different locations. A recently opened themes/objects list would be beneficial.
Please consider a proper dialog window for adding custom files. The one we have now is entirely cumbersome, counterintuitive, and unnatural. It's too small, too tedious to navigate, and cannot add multiple files at once.
1. Fix for WMI control. Some WMI scripts doesn't work on Vista without hacking the System Security Settings through auxiliary functions...
2. Full access to Windows API to create more usefull performance meters and administrative
applications. It would be great to see support for Visual
Basic 6.0. DesktopX will be incredible in this case!
3. Full access to ActiveX controls. In particular - to
Windows Media Player
11 (in Vista). As well I found a lot of bugs in this area when have tried to work with ListView, TreeView, ImageList, etc... DesktopX stops working and requires a reboot from time to time.
4. Support for Windows 64bit...
5. Expand the possibility of scripted animation. At least for images that has frames stacked verticaly.
6. Add "minimize" or "hide/unhide" option to Object Navigator.
7. Please, fix a bug with fonts in the Script Editor.
One more important detail!
Many of us likes use the DesktopX Form to create simple Toolbox or Control Panel for their widgets/gadgets. No doubt - this is very useful addition to DesktopX. But there is one unpleasant problem. We don't have any chances to edit the size of its elements (like TextBox, Combolist, etc..). As well to change their position inside the Form and the distance between each of them. As a result - the final product looks like unfinished....So please add the ability to edit (customize) DesktopX Form and its elements. It would be really great!
Another impotrant thing... It would be great to see *.avi in the list of Supported Formats (Object -> States -> Appearance -> Image) to use the real animated textures in the widgets/gadgets skinning...
As well as...
Two months ago, I worked on a gadget which can read and display S.M.A.R.T. data and HDD temperature through WMI. I've done it but the gadget can find only one phisical drive "C"... The other USB drives are unavailable. As well it can't measure the CPU temperature...
So it would be great to add into DX4 some plug-in which will work with PC sensors and retrieve the necessary data for us (for example like Everest).
It would be great to see:
1. Three new ActiveX controls integrated into DesktopX: Multicolumn ListView, TreeView and ImageList (with support for 32-bit images and icons) to make applications like windows explorer. (Or improve the access to MSCOMCTL.DLL. The elements of controls must be skinable - i.e. add the support for WB skins).
2. The OnClick event in the WebBrowser control for active elements of opened pages.
3. The ability to add/use icons in the DX Context Menu.
1. DesktopX PushButton and CheckBox control doesn't support the alpha channel. As a result we can see the ugly contour around these controls... Can it will be corrected in the DX4?
2. Object Navigator doesn't keep the font settings and resets it each time on startup... As well as the type of cursor on its ScrollBars is wrong. It show the "Diagonal Resize" instead of "Normal" mouse pointer.
3. When the Windows Media Player Control will start to work in DesktopX? If I remember - the age of this unpleasant bug is more than 1 year!!!!
- make DX not murder CPU as soon as something a bit larger or a group of objects has to be moved/resized/transparentized(i made that last one up but u catch my drift).
- please fix at least the problem of controls not showing until their parent is dragged
- improve script editor - maybe add tabs and other tools that other editors have (i love notepad++)
- maybe enable gadgets to wipe their data off the PC as soon as they're closed (for instance when running them from a memstick)
- it would be great if we could use blur and similar techniques to make our objects more attractive (windowblinds style), it would also be cool to be able to access windowblinds skin data easily and not have to be of Vad_M's caliber to do so
- make some more plugins for lets say: catching global keyboard keys imput, mouse movement (maybe ability to move mouse) and all mouse buttons as well as current mouse coursor's state.
- maybe enable already completed gadgets to communicate with eachother
I just remembered two things I'd really like to see (cant believe i totally forgot about them):
1. Enable parts of widgets/gadgets to be on different levels (one part Always on top, some other part at Desktop level etc.) It would be also nice if Z-order would be accessible through scripts.
2. Enable widgets/gadgets to steal/get focus - when using global hotkeys its very frustrating because the gadget shows itself because it has been set to visible by the hotkey but it is not in focus so you first must click on it before you can use it and that almost defeats the purpose of hotkeying it in the first place.
Include all the scripts that are available here at WC forums and sViz's Script Helper as 'templates'.
An advavnced DX player.
Low resource usage when using large animations.
Ability to import objects one by one or as a group from a dxtheme.
1. A way to toggle sounds in DX. People are always asking me how to kill those annoying sounds, while others, like myself, like them.
2. A way to turn off labels on the shortcuts added to DX. For instance. When I make a DX theme, after uploading it to the gallery, I add my shortcuts to the drag and drop menus. About 64 to 80 of them. Then I export it as a widget. I can make the label color default a magic pink, but when you export as a widget, that is nullified. So I have to go properties for each of the 64-80 icons and delete the text. It is ugly and cumbersome to have the text left there...especially if it is something like, "SureThing CD Labeler Microboards Edition 5." Takes up a lot of space in a menu. A simple way to toggle labels would save me a lot of work.
3. ( I know I said 2.) A simple way to have said drag and drop shortcuts to lock into place, rather than doing it one at a time for all 80 shortcuts. sViz has created a template that locks the shortcut, and removes the text and it works very well, but not all users know how to script. Of course, I can go into object navigator and highlight only the shortcuts and right click and lock in properties, but a simpler way would be nice.
Horizontal and vertical guidelines to help make things straighter. Or maybe a grid that we can turn on and off.