[Laszlo-dev] For Review: Change 20071026-Philip-8. Summary: Convert swf kernel to lfc class system (swf9 kernel)

Max Carlson max at openlaszlo.org
Wed Oct 31 11:29:58 PDT 2007


Hi Phil,

There's a testcase for soundmc (and may other kinds of resource loading) 
here:
http://localhost:8080/trunk-clean/test/lfc/legals/multiframeresource.lzx

An it appears to work just fine.


Philip Romanik wrote:
> 
>  > In LzInputTextSprite:
>  >
>  > Max, now that LzInputTextSprite extends LzTextSprite, can Phil
>  > eliminate the copied bits?
> 
> My opinion is to keep it as-is for the time being. This makes it easier 
> to diff the swf/swf9 files and will be important to make sure any 
> changes that are made to the swf kernel aren't missed.
> 
>  > Phil, what about the "PBR TODO Check"?
> 
> This is LPP-4951. When I fix it in the swf kernel, I'll fix it in the 
> swf9 kernel
> 
>  > What is the point of the empty constructor?
> 
> Copied from the swf implementation
> 
>  >
>  > In LzKeyboardKernel:
>  >
>  > Is there any possibility the explicit references to LzKeyboardKernel
>  > (rather than this) were because that method was called unbound, i.e.,
>  > called as a bare function, not as a method on the instance?  If it is
>  > used in a callback, that is likely the case.
> 
> The only calls are in SWFFile.java:
>             s = "_root.LzKeyboardKernel.__keyboardEvent(Key.getCode(), 
> 'onkeydown')";
> 
>  >
>  > LzLoadQueue:48
>  >
>  > Not sure what `this` means here, in the top-level of a class
>  > declaration.  That code will run in the class initializer, but it is
>  > probably meant to be in the instance initializer (i.e., to monitor the
>  > variable on the singleton instance).  In which case, you don't really
>  > need a separate method...
>  >
>  > Same thing with line 64.  You can't refer to `this` in an instance
>  > variable initializer.  You'll need to move that initialization into
>  > the instance initialize method.
>  >
>  > Line 110:  See the 'N.B.' comment at the head of the method.  Your
>  > `this` won't work.  (It _will_ work in real Javascript2, but it won't
>  > in our implementation since we don't (yet) do bound methods.)  This
>  > really should not be a method at all, since it clearly expects to be
>  > called with `this` bound to something other than an instance...
> 
> Thanks for spotting this as the first two are clearly wrong. I'll figure 
> out what is wrong with line 110 and fix it. If the comment is correct, 
> this needs to be a static object.
> 
> 
>  > LzSoundMC:  Have we tested that sounds work?  There is a TODO about
>  > inheriting from movieclip...
> 
> I'll come up with a test case.
> 
> 
>  > LzSprite:  The vars in ALL_CAPS should probably be class vars, but
>  > then you'd have to find and adjust all references to them...
> 
> I'll create a jira task for this.
> 
> 
>  > LzTextSprite:
>  >
>  > Same question as for LzInputTextSprite regarding copying vs. inheriting
> 
> 
>  > classname is redundant, that is done by class
> 
> I'll fix this.
> 
> 
>  > You made DEFAULT_SIZE static, but not PAD_TEXTWIDTH?
> 
> I'll fix this.
> 
>  >
>  > Line 588: LzText.DEFAULT_SIZE -> LzTextSprite.DEFAULT_SIZE:  Is this a
>  > bug in the 'real' kernel that should be fixed too?
> 
> This is LPP-4952. When I fix it in swf kernel, I'll fix it in swf9.
> 
> 
>  >
>  > Otherwise, Approved!
>  >

-- 
Regards,
Max Carlson
OpenLaszlo.org


More information about the Laszlo-dev mailing list