[Laszlo-user] Causing something to be created asap

james circlecycle at gmail.com
Sun Jul 15 21:49:01 PDT 2007


I may be able to give guidance. Understand that XML is read from  
source depth-first and quite naturally (after consideration of the  
system) instantiation happens depth-first reverse. In other words the  
compiler translates OL programs into the runtime (javascript) in the  
the same order as an XML document is parsed, (depth-first, top to  
bottom). The innermost classes are instantiated before their parents  
are (depth-first reverse). Putting a class at the 'top' of the canvas  
means that it gets interpreted by the runtime before class  
definitions it needs are interpreted and included to use.

Another part of the initialization solution is:

<handler name="oninit" reference="canvas">
	.....
</handler>

So that although your code that depends will run at initialization  
time, all other objects will be instantiated (since they are children  
of the canvas and children are initialized first).  (note, the  
reference tag is handy and available in the documentation for handler.)

Although i'm not answering your question specifically, HTH.

.j.

On Jul 15, 2007, at 11:56 PM, Robin Sheat wrote:

> I have a class (extends node) that contains a few other things that  
> manage
> other parts of the program. I'd like this to be instantiated as  
> soon as
> possible, and I'm declaring it near the top of the canvas. In  
> particular,
> it's used in constraints on things further down in the canvas,  
> however I
> often get exceptions that classes I try to access in it are undefined.
>
> I have put initstage="immediate" in the containing class, but it  
> doesn't seem
> to help.
>
> -- 
> Robin <robin at kallisti.net.nz> JabberID:  
> <eythian at jabber.kallisti.net.nz>
>
> Hostes alienigeni me abduxerunt. Qui annus est?
>
> PGP Key 0xA99CEB6D = 5957 6D23 8B16 EFAB FEF8  7175 14D3 6485 A99C  
> EB6D



More information about the Laszlo-user mailing list