Hi
There is a trick I use to get sub-groups within a master group to the
top when they get selected.
I have 2 invisible grafics (just empty small rects) at the top of the
master group.
Let's call them lowBoundry and highBoundry
Now when the user selects a sub group and I want to bring it to the
front, I first move the
sub group inbetween the 2 invisible graphics. In this way the sub group
does not become part of the highest sub group. Next I move the the
lowBoundry graphic
to the top. So now from top to bottom: lowBoundry - highBoundy - the
sub group that was moved.
So all we need to do now is move the highBoundry again to the top to
restore there right order.
There is one important little "snag" though. Say the sub group to move
to the top is on layer 10
and consists of 2 controls. The total of layers in the master group
(including the 2
invisible graphics) is 16. This means the lowBoundry wil be on layer 15.
The moment you change the layer of a sub group it will first be taken
out of the stack.
In this case the sub group consists of 2 controls, so the total number
of layers this sub group
occupies is 3. This means the lowBoundry graphic will first fall down
to layer 12 (15 - 3). In essence
all the controls above the sub group we move, will fall down by the
number of layers the moving group occupies.
This trick works very fast and it doesn't matter how many sub groups
there are. Of course it only
works to bring a sub group to the top, but probably when selecting
objects, something like this might
just be what you need.
I use it in a slightly more complex way in an application where I have
many sub groups but the
sub groups are of different specific types. Let's say some have a
triangular shape, others
a circular shape and the third kind are of square shape. Now when the
user selects a triangle
it should move to the front of all triangles but always stay behind the
circles and the squares. The same applies
of course to the circles and the squares. Each should move to the top
of it's kind but not cross the boundry to other types.
Here I use 3 invisible graphics between the kinds. So above all
triangles there are 3 invis grc's then come
the circles with also 3 invis grc's and next come the squares and
finaly again 3 invis grc's (actualy for the top,
2 graphics is enough) In between you need 3 graphics of which the
topmost never moves, but prevents
the other 2 graphics to become part of a sub group when they are
switched around.
I hope you can use it or that some one else finds this usefull
Best wishes
Claudi
On 1-feb-06, at 21:16, Jonathan Lynch wrote:
Hi Terry,
I use this technique to adjust the layer of a subgroup that contains an
image, which is inside a group that works as a page. A page can contain
fields and images. All the images are inside groups in order to allow
them
to be reversably cropped.
So, I might have 5 to 10 objects on a page. Doing this, relayering an
image
group takes maybe 1/5 of a second - something like that. The lag is
definitely noticeable. With 100 objects to relayer, I bet you will
notice
the lag time.
If you manage to figure out a better way, please let me know.
Good luck,
Jonathan
On 2/1/06, Terry Judd <[EMAIL PROTECTED]> wrote:
Hi Jonathon - I arrived at a similar solution after much stuffing
about
last night. My only concern is that I may have to do this with lots of
objects (100+?) every time I want to drag one about. Hopefully it's
not
too slow.
Thanks for the info.
Terry...
I have a solution to this problem.
It was a real pain to figure out. The basic problem is in the way
Revolution
orders items inside of a group. To keep a subgroup intact, when you
relayer
it inside of a group, you have to set it's layer to the bottom of the
group.
So, the question arises, how do you move a subgroup up and down, if
the only
safe method is setting it to the very bottom. The answer is this:
When
you
are moving a subgroup down one layer or up one layer, what you really
do is
determine when layer the subgroup needs to be at, then move all the
other
subgroups and objects in the group to the bottom, in the correct
order, so
that everything else stays in the order it was in, and the subgroup
winds up
at the layer you want it to be at.
It's a giant pain, but it works.
I can send you an example of a stack that does this, if you wish.
Take care,
Jonathan
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution