DesktopX Journal: Day 5

Building a better desktop

Thursday, March 10, 2005 by Frogboy | Discussion: DesktopX

Widgets have gotten a lot of attention in the past year. I admit, we've really fixated on the widget aspects of DesktopX since that's where a lot of the interest seems to have been. But with DesktopX 3, we have not forgotten about one of the most popular uses of DesktopX -- building a desktop.

To recap - DesktopX (Standard and Pro) enable users to create desktop objects on their Windows desktop. These objects can be as simple as a static picture or as complex as any stand alone program could imagine being. It's up to the user.  These objects can be grouped together and exported.  They can be exported as objects to be put on people's DesktopX enhanced desktop, they can be exported as widgets to be run as mini-programs...OR...they can be put together to build an entirely new desktop.

What I want to show is how easy it is to create a desktop.  My example, to keep it simple, is pretty lame I confess but hopefully it'll cover enough of the basics that you can go from there.

First off, for my desktop I'm going to have a bottom bar and a right bar. So I'll need an image.  I'm going to borrow an Aero-style PNG file I got on WinCustomize. Then I'm going to create a DesktopX object and assign its image to be that Aero PNG file.  Then on the states tab I'm going to go to appearance and then "Advanced" and set up how it can be tiled and stretched.  Basically I want to be able to resize this PNG image without it looking stretched out.


Now that I've done that, I'll resize it to make sure I did it right.  I do that on the summary page.


Good. Looks good resized.  Now, in DesktopX I can make things a % of the desktop.  DesktopX is natively resolution independent (unfortunately, most people choose to hard code the size of their exported desktops which is almost always unnecessary).  So I'm going to make my image be 100% of the horizontal size but 64 pixels tall.


Now to do the same with a vertical one which I created using "clone".


Next I will prepare to hide my Windows desktop icons and Start bar.

Now for fun I'm going to put the date and time.  DesktopX includes a plugin that does this. So I just select that under "additional abilities" and then make that object of type text.


Okay, so here's my little text object. I changed the colors and gave it a border so that it stands out.


Now, one of the things that's important to remember when building a desktop is that you'll want all your "desktop" items to be of the desktop z-order (by default, objects are created at the Normal z-order).  You want your desktop stuff to always show up below your windows.


Now I need a Start button.  Okay, here I cheated, I went onto the DesktopX area and did a search for a start button. This just brings up the Windows Start menu.


Now to add a system tray.


Make it match my existing look.


And then toss it on there.  Now, I also need to reserve the space for my various docks. There's tons of ways to do this. The easy/lame way is to just go and set the workspace area.


I'm just maximizing my window so you can see the effect of workspaces.


Now I start importing objects to put on my docks. Then I go to the ObjectDock section on www.wincustomize.com to start finding more specific PNG and icon files I want.


One thing nice about DesktopX objects when dealing with icons and such is that you can control their size and you can control how they behave in different instances (such as mouse over). I also gave this object a shadow.


So now let's create another object that I'll use as a pop up.


Using my trusty Aero image once again I have made a nice box.


So now I'm going to need a thin that when clicked on will toggle my pop up.  So I grabbed this. I will resize it to 32x32 (looks really cool big eh?).


So now I make this object an "object controller".


And I turn my pop up window into a toggle popup.


And voila. Drag and drop some stuff on there, put some MP3 player controls I made on there and I have an interactive pop up window.


Now to export my desktop.


..and I'm done.

So there you have it, a quicky way to build a simple desktop. Hopefully your imagination can come up with much more spectacular things than I did here.  I whipped this up in less than 15 minutes so you can imagine what's possible with real work.
Island Dog
Reply #1 Thursday, March 10, 2005 8:47 AM
Very nice.

Thomas Thomassen
Reply #2 Thursday, March 10, 2005 8:47 AM

Now, one of the things that's important to remember when building a desktop is that you'll want all your "desktop" items to be of the desktop z-order (by default, objects are created at the Normal z-order). You want your desktop stuff to always show up below your windows.


True, but you where making sidebars. Wouldn't it make more sence to have them allways on top? So that your systemtray allways is visible even though you should drag a window over that area?
Frogboy
Reply #3 Thursday, March 10, 2005 10:55 AM
That is true.
danioc
Reply #4 Thursday, March 10, 2005 11:00 AM
Great guide, thanks for the info.
Thomas Thomassen
Reply #5 Thursday, March 10, 2005 11:14 AM
Btw, a little off topic.
Could you explain this a little more: (From https://www.stardock.com/products/desktopx/propurchase.asp)

You may not use the DesktopX Professional software to export entire desktop environments as gadgets (stand alone programs). If you wish to build distributable desktops contact us about licensing DesktopX Enterprise.

What is it meant with "entire desktop enviroment"?
Frogboy
Reply #6 Thursday, March 10, 2005 12:18 PM

You can't build a desktop (such as what I made here) and then export the whole thing as an EXE.  You could theoretically build an entire custom desktop and then instead exporting it as a .desktop you could select all and try to export it as a widget/gadget which isn't allowed under the license terms. 

Someone who wants to distribute a desktop across their company would need to buy DesktopX Enterprise.

Thomas Thomassen
Reply #7 Thursday, March 10, 2005 1:01 PM
Not even compile desktop for friends and family? What about freeware desktops?
GreenReaper
Reply #8 Thursday, March 10, 2005 4:11 PM
A suggestion from a user who viewed this article (not me): Perhaps links to it and similar articles should be put somewhere in the documentation so people who just bought it or have it with OD get a better idea of what they can do with it.
jfp3
Reply #9 Thursday, March 10, 2005 4:42 PM
Good suggestion Green Reaper. When I first started with OD and created an object on my desktop I thought "buttons only". After playing around over next few days I saw how versatile I could get with it. Then again, I rarely read the manual first
Frogboy
Reply #10 Thursday, March 10, 2005 11:21 PM
thomassen: You can export your desktops as .desktop files. Your friends and family can just download the DesktopX run-time from DesktopX.net.
mrbiotech
Reply #11 Thursday, March 10, 2005 11:33 PM
While we're makin' requests: Frogboy, I'd love to see something on making themes resolution independent. I've always had trouble trying to get the different elements (taskbar, system-tray) to line up next to eah-other and play nice so that they'll work on whatever resolution screen the theme is thrown on. There have been several threads on this over the years, but it would be great to finally have a definitive explanation of how to accomplish this (hint, hint)
Draginol
Reply #12 Friday, March 11, 2005 12:00 AM

I'll try to write up an article on how to do this.  I really have never had a problem creating resolution independent themes. It all has to do with using the adjust position feature in the Relation tab.

Thomas Thomassen
Reply #13 Friday, March 11, 2005 8:55 AM
Frogboy: Can you explain to me the definition of a "desktop"? Would that be something that replaces the systemtray and/or taskbar? Are sidebars considered desktops? If I make objects that replace the use of icons, would that be considered a desktop? I'm just wondering of what would define a desktop and what would define and application. (Should I start a new thread for this?)

Please login to comment and/or vote for this skin.

Welcome Guest! Please take the time to register with us.
There are many great features available to you once you register, including:

  • Richer content, access to many features that are disabled for guests like commenting on the forums and downloading skins.
  • Access to a great community, with a massive database of many, many areas of interest.
  • Access to contests & subscription offers like exclusive emails.
  • It's simple, and FREE!



web-wc01