Changing layers of Objects and Groups

Dave dave at looktowindward.com
Tue Apr 3 11:48:42 EDT 2007


On 3 Apr 2007, at 16:21, Trevor DeVore wrote:

> On Apr 3, 2007, at 6:25 AM, Dave wrote:
>
>> GroupA
>>    GroupB                                    (Inside GroupA)
>>      Object1OfGroupB
>>      Object1OfGroupB
>>      Object1OfGroupB
>>    GroupC                                   (Inside GroupA)
>>      Object1OfGroupC
>>      Object1OfGroupC
>>      Object1OfGroupC
>>    GroupD                                   (Inside GroupA)
>>      Object1OfGroupD
>>      Object1OfGroupD
>>      Object1OfGroupD
>>
>>
>> GroupE  (not in a Group)
>>
>> I have set "relayerGroupedControls" to true via the message box.
>>
>> I then try to change the later of "GroupE" so that it is "GroupA",  
>> but it always ends up in one of the other groups (B,C or D) not in  
>> GroupA.
>>
>> Any ideas???
>
> Ahh, relayering objects in groups.  The way that groups are  
> implemented in Rev (using indexes) means that you see some  
> unexpected behavior when trying to move objects in and around other  
> grouped objects.
>
> There is a solution though.  If you wanted to move GroupE into  
> GroupA you would set the layer of GroupE to the layer of GroupA +  
> 1.  If you wanted to move GroupE to the end of GroupA (after  
> GroupD) you would
>
> set the layer of group "GroupE" to the layer of group "GroupA" + 1
> set the layer of group "GroupD" to the layer of group "GroupA" + 1
> set the layer of group "GroupC" to the layer of group "GroupA" + 1
> set the layer of group "GroupB" to the layer of group "GroupA" + 1
>
> There may be other ways of accomplishing this but I have not been  
> able to find it.  The only reliable method (meaning controls don't  
> become children of a group unintentionally) I've found is the above  
> technique.  I would love to hear if someone has another solution  
> though.

Hi Trevor,

I tried that, but it doesn't work, at least in RunRev 2.8.0.370 on  
Intel Mac it doesn't. Given the following setup:

01  GroupA
02    GroupB                                    (Inside GroupA)
03       Object1OfGroupB
04       Object1OfGroupB
05       Object1OfGroupB
06     GroupC                                   (Inside GroupA)
07       Object1OfGroupC
08       Object1OfGroupC
09       Object1OfGroupC
10     GroupD                                   (Inside GroupA)
11       Object1OfGroupD
12       Object1OfGroupD
13       Object1OfGroupD


14  GroupE  (not in a Group)


If I set the later of GroupE to 1, it becomes layer 1 and GroupA  
becomes layer 2. If I set the layer of GroupE to 2, it becomes layer  
2 (inside GroupB) and all the other object layers increase by one.

I can't seem to find a way to add a group to an outer Group that just  
contains Groups. The new group is either put before the group or  
inside one of the sub-groups.

All the best
Dave










More information about the use-livecode mailing list