How do I scan all the objects on a card?

Graham Samuel livfoss at blueyonder.co.uk
Tue Feb 11 04:17:00 EST 2003


On Tue, 11 Feb 2003 11:21:41 +1030, "Monte Goulding" 
<monte at sweattechnologies.com> wrote:
>
>Try
>
>repeat with X=1 to the number of controls of this cd
>   -- why not use the GM to save the hassle?
>end repeat
>
>Monte
>
Monte - thanks for your interest, but I have had no luck so far. I 
don't see why the 'X=1...' formulation should work better than 
'repeat for each...', but if it does, I guess it does. I chose 
'repeat for each' because the Transcript dictionary warns that this 
is a slower method, and I had no real reason to need the index 'i'. 
Your solution implies that the controls on the card have unique 
consecutive numbers starting from 1, which I didn't realise was the 
case, and seems to be contradicted by the Transcript Dictionary which 
says "The expression control 2 refers to the control whose layer is 
2" which implies that the numbers are not unique, since not every 
object is on a different layer. Also, I tried an experimental button 
with this script:

  on mouseUp
    repeat with X=1 to the number of controls of this cd
      put (the name of control i of this cd) into line i of fld "MyList"
    end repeat
  end mouseUp

But this produced a runtime error. I suspect that "control i" in this 
context does not translate to stuff like "graphic i" or "image i" or 
"field i" according to circumstances, a usage I have so far found I 
have to organise myself. I tried a number of variations, but no luck 
so far.

As to the GM, I've read many messages suggesting there are bugs in 
the 1.1.1 Geometry Manager; and also some of the things I want to do 
don't relate directly to geometry (for example certain properties 
will have to be reset from arrays of values that relate to screen 
size in complex ways; some clusters of objects stay together but move 
to new bits of the screen; some background colours may change, etc.), 
and I therefore need a scanning structure outside the GM to change 
this other stuff, so might as well do the whole job there (I 
thought). But I will look at the GM again.
>
On Mon, 10 Feb 2003 17:47:54 -0800 (PST)  erik hansen 
<erikhans08 at yahoo.com> wrote:
>
>View > Application Overview > little triangle
>

Erik, thanks but I don't see how this helps me at run time (in fact 
startUp time) within my app, but maybe I misunderstood your point.

Back to the cyber-drawing board. But I still do believe that Revo 
itself knows how to do this.

Graham
-- 
-------------------------------------------------------------------
          Graham Samuel / The Living Fossil Co. / UK & France



More information about the use-livecode mailing list