Grouping is important if you want your objects to behave as a single unit. As
you’ve no doubt figured out, a given object can really only do one thing at a
given time.
This is best illustrated with an example. Imagine we wanted to create a
simple Drive C bar disk space bar graph.
I would need 3 objects:
Object #1: The background for my meter
Object #2: The text label to say “Drive C:”
Object #3: The actual bar graph
So I would create my 3 objects.
Object #1 – the background. I would change its default appearance to be
something relatively solid.
Object #2 – the text label. I would go to the appearance tab, change it to be a
text object and type “Drive C:”.
Object #3 – the bar graph. I would open the object properties, go to the
additional abilities area on the general tab, choose “add” and pick the
Performance Meter plugin. Then select it, make sure its width and height fit
within the size of my background. Then I would click on the data source tab and
choose its data source to be the disk space from Drive C.
At this point I would have something like the above. Now, I would drag and
drop the objects together to make it look how I wanted it.
Then I would drag select (or right click on one of the objects and do a
select->all) all the objects. Then I would right click and choose group:
When I pick group I get this dialog:
First I would need to give my group a name. Any name will do.
Next I would need to decide which of these options I would want
to use. Realistically, they’re all pretty much the same. The difference in the
three options is pretty technical but here they are explained:
Normal (grouping)
This puts the objects in a basic group. DesktopX doesn’t modify
the parent-child relationship of the objects, instead it manually keeps track of
how the objects are grouped to one another. This option is good if you have a
really complicated object with lots of very specific parent-child relationships
that you don’t want modified.
The down side is that when moving the object around, there is a
loss of performance since there’s a lot more book keeping by DesktopX to
preserve all the existing parent/child relationships.
Optimized (grouping)
In this scenario, DesktopX will generate parent/child
relationships between the various objects based on their relative Z-order to one
another. The objects are still individual entities as far as DesktopX is
concerned but they will now move together very smoothly. This is the most common
option (and the default).
The down side is that it will modify the parent child
relationships of objects which, if the object was counting on a particular
object being its parent can be a problem.
Combine (grouping)
In this option, the objects are effectively combined into a
single mega object. This provides the ultimate in performance when moving the
object around. The down-side is that it creates a single window for the whole
object. That means if you move a child object away from the parent, it’ll
disappear since it’s outside the “object window”.