More efficent checking of multiple objects
David Burgun
dburgun at dsl.pipex.com
Tue Nov 1 11:03:17 EST 2005
Hi,
Here's something I did that you may be able to adapt. In my case they
objects are rectangles and the label/name field is not displayed.
Also all that needed to happen was if the rectangle was clicked, an
action specific to that rectangle had to be performed. To do this I
did the following:
Setup an array that has the key being the (long) name of the button
and the data as the value of being an object-specific field.
If the user re-ordered the rects all that needed to be done was to
swap the data field of the Array between objects, e.g.
Given the following Rectangle List:
R1,R2,R3,R4,R5,
The Array would look like this:
"R1",VALUE1
"R2",VALUE2
"R3",VALUE3
"R4",VALUE4
"R5",VALUE5
if user changes the position so that R5 comes after R2
R1,R2,R5,R3,R4,
"R1",VALUE1
"R2",VALUE2
"R3",VALUE5 <-----
"R4",VALUE3
"R5",VALUE4
So all that is done is to move VALUE5 into R3, VALUE3 into R4 and
VALUE4 into R5.
Then in the mouseUp handler for each rectangle:
on mouseUp
put theArray[the name of me] into myValue
put DoMouseUpInRect(the name of me,myValue) into myResult
end mouseUp
You could do the same using custom properties for each object, but I
found this harder to maintain and debug.
Don't know if this would help in your case, but maybe you can adapt the idea.
All the Best
Dave
>Dear Jan,
>
>>I use a repeat with T=1 to (the number of buttons of group "Timeline")
>>because I need to reorganize all the other buttons if the user
>>moves just one of them.
>>
>>In the future the user can have up to 1000 of these buttons in the
>>timeline. At this point I guess the repeat loop will be very slow.
>>
>>Is there a more efficient method I can use here?
>
>If the user eliminates or changes button x, is there any need to
>adjust buttons 1 through (x-1)? If not, you can start T=X to (the
>number of buttons of group "Timeline". It won't help much if the
>target is button 1; but it should help lots if the target is button
>999.
>
>If the relationship of the buttons is different such that action on
>button x can require changes to buttons 1 to (x-1), I'd need to know
>more to offer further suggestions.
>
>Rob Cozens, CCW
>Serendipity Software Company
>
>Vive R Revolution!
>_______________________________________________
>use-revolution mailing list
>use-revolution at lists.runrev.com
>Please visit this url to subscribe, unsubscribe and manage your
>subscription preferences:
>http://lists.runrev.com/mailman/listinfo/use-revolution
More information about the use-livecode
mailing list