That sound right. If you wanted to move forward on this, I would try
to follow the call chain of what completeInstantiation does and see
if anything there would end up looking at the initstage value.
Otherwise, I suggest we wait for an answer from Adam.
On 2007-09-10, at 14:51 EDT, Philip Romanik wrote:
Hi Tucker,
The LFC doesn't call completeInstantiation() when initstage=late.
Your concern is valid, but the user must manually call
completeInstantiation() to setup this condition. Depending upon
what Adam says, I think the right solution is to modify
completeInstantiation() to make sure the initstage is reset in all
cases (if it even needs to be set to early).
Thanks!
Phil
I'm concerned that:
a) There will now be a complaint that initstage=late changes to
early, or,
b) We are missing something as to why the initstage is changed in
completeInstantiation
What I'd like to know from the original reporter (cc-ed) is if there
is a problem with the initstage being changed, or if he is just being
pedantic.
I will ask Adam if he can elaborate on why he changed the initstage
(and cc you).
On 2007-09-10, at 12:38 EDT, Philip Romanik wrote:
> Change 20070910-Philip-6 by [EMAIL PROTECTED] on 2007-09-10 12:06:18
> EDT
> in /cygdrive/f/laszlo/svn/src/svn/openlaszlo/branches/
wafflecone
> for http://svn.openlaszlo.org/openlaszlo/branches/wafflecone
>
> Summary: Prevent initstage=defer from changing to "early"
>
> New Features:
>
> Bugs Fixed: LPP-712
>
> Technical Reviewer: ptw
> QA Reviewer: (pending)
> Doc Reviewer: (pending)
>
> Documentation:
>
> Release Notes:
>
> Details:
> initstage is changed to "early" in completeInstantiation().
> However, I don't see why this change is necessary. Objects are
> instantiated without problem if you leave initstage=defer. I did
> not touch the other case where initstage is set to "early".
>
> Tests:
> Run spike-initstage.lzx test that is listed in LPP-712. This is the
> app, with slightly enhanced debugging output. When you click on the
> "finish" button, the last window will be inited.
>
> <canvas>
> <debug y="200" />
> <class name="mywindow" extends="window" width="100"
height="100" >
> <method event="oninit">
> Debug.write("oninit", this.initstage, this,
this.title);
> if (global['deferedWindow']) Debug.write
> ("deferedWindow.initstage",
> deferedWindow.initstage, deferedWindow.isinited);
> </method>
> </class>
>
> <mywindow title="immediate" initstage="immediate" x="0" />
> <mywindow title="early" initstage="early" x="100"/>
> <mywindow title="normal" initstage="normal" x="200">
> <button text="finish"
> onclick="deferedWindow.completeInstantiation()" />
>
> </mywindow>
> <mywindow title="late" initstage="late" x="300"/>
> <mywindow id="deferedWindow" title="defer" initstage="defer"
> x="400"/>
>
> <simplelayout/>
> </canvas>
>
>
> Files:
> M WEB-INF/lps/lfc/core/LzNode.lzs
>
> Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20070910-
> Philip-6.tar
>
>