DX Questions - Ontop - System Prefs - Version - HELP SD!!!

I have a few things that i am having some issues with, and im not sure if these are things that SD would have to add to DX or there is a way to do this in scripting.

Standard Preferences (Z-ORDER):
Is there a way to set/change Z-Order of the entire widget from a script?
I am not a fan of the "standard properties" box, I like it better to have my own setup.
I would like to be able to set the Z-Order to "Always on top" then back to "Normal Level" from a script.

About Dialog Box:
Is there a way to pull the VERSION from this dialog box? It has to be out there somewhere, its the version info we put into the gadget/widget when we export it.
Heck, why not ALL the info... something like.
widget.about.version
widget.about.author

That possible? Or does it exist somewhere.
Thanks in advance for any help.

(ok, now Vad, Tiggz are gonna come in here and make me look like a moron cause all this is out there somewhere, and i just dont know how to find it, but i can live with that, hell if Zu can make widgets, even I can learn.)

9,293 views 16 replies
Reply #1 Top
hell if Zu can make widgets, even I can learn
End of quote
"borrowing" = learning in your world?

So much becomes clearer.   :LOL: 
Reply #2 Top
Love ya BFF..
Reply #3 Top
Anyone other than Zu out there????
Reply #4 Top
For the first question if you use a base object why not just use a variable and the Object.OnTop namespace? Or better yet, maybe set a boolean value with false being normal and true being OnTop? Something like below could be easily adapted to a form combo box.

Code: vbscript
  1. Dim blnPosition : blnPosition=False ' Or 0 I always set a default externally
  2. Sub ChangePosition
  3. If blnPosition=False Then
  4. blnPosition=True
  5. Object.OnTop
  6. ElseIf blnPosition=True Then
  7. blnPosition=False
  8. End If
  9. End Sub


For your second question maybe look at the Shell.Application object but, I'm not sure how this might be with Vista?

Edit: I'd like to see an Object.OnBottom namespace added. This could come in handy sometimes.
Reply #5 Top
SirSmiley,

Ok, once something is made "ontop" how do you undo that? There is nothing that i can find to do that. Except in the Preferences dialog box, that z-order. Thats what im looking for.

Im not sure about the shell.application? where/what is that?
Reply #6 Top
opps.. meant to add.. Thanks for the ideas.
Reply #7 Top
I once asked Alberto (dx dev guy) whether we could have the always-on-top property scriptable and he said "sure", he probably just needs reminding ;)

As for the version info etc - put some constants at the top of your script that match what you will enter in the fields when you export it.
Reply #8 Top
Umm...forget the OnTop idea it just changes or positions the object to the top of all the other DesktopX Objects/Layers. It was worth a shot.

The Shell.Application object exposes some features of the Windows Shell to script. A good example is you can move/delete files and display the standard dialog you would get from the right click menu. Hope that helps.

Here's a MS link: Scriptable Shell Objects
Reply #9 Top
As for the version info etc - put some constants at the top of your script that match what you will enter in the fields when you export it.
End of quote


Been there one that.. i just want to try and only have it in 1 place, and since im entering it when i export, why do i have to put it in my code too? Lazy? no, i just want them to match.

The Shell.Application object exposes some features of the Windows Shell to script. A good example is you can move/delete files and display the standard dialog you would get from the right click menu. Hope that helps.
End of quote


Ok, i was just thinking you found some other use for that with the DX widget.

Anyone from SD Dev out there?
Reply #10 Top
You can fake a nearly-always-on-top solution by using a timer that repeatedly calls Widget.OnTop


Been there done that.. i just want to try and only have it in 1 place, and since im entering it when i export, why do i have to put it in my code too? Lazy? no, i just want them to match.
End of quote


Sometimes you just gotta roll with it ;)

Sorry I couldn't be more helpful, dx is an intricate web of functionality and compromise :LOL:
Reply #11 Top
Sorry I couldn't be more helpful, dx is an intricate web of functionality and compromise
End of quote


you got that right bud.. its all good.. it will work out somehow.. who knows.
Reply #12 Top
i would LOVE to see someone from the dev team look at this and give us a "no" "yes" "possible" on these.. ANYONE???

Also.. the System tray/task bar does not seem to work when you export things as a GADGET.. is that the norm, because that not good. HELP?????
Reply #13 Top
I was thinking about object on top and script control.I came to this conclusion.If you
create object a set at normal, duplicate it, set at ontop, then, control visibility any way you wish, and, you should be good to go.

Why isn't it easier to see, I'll never know, it just came to me now. Weird.

Good Luck Eddie
Reply #14 Top
Jingles, that doesn't work. Tried your suggestion a number of different ways and none of them controlled positioning of the widget from script.
Reply #16 Top
I realize this post is sort of old, but I think I found a work-around for changing Z-Order. As long as your widget or group is has movement locked, then this should work well (you could probably even do it with a movable object with a little more script).

You have two/three base objects with a transparent 1x1 image (not no image at all, as this seems to make everything act weird on Always on Top), each object with a different Z-Order setting through the DX GUI editor. When you want to change the Z-Order, just set the parent of all the children objects to the base object that you want, and make sure that you aren't changing the parent of the children of those children, etc. The whole widget should be at a different level now.

If you want to allow the object to be movable, you could just make the position of the second base object equal to the first base object before transferring the children (I haven't tried this yet, though).

Hopefully Stardock will realize at some point that it would be great if you could directly change the Z-Order through script, however...