[Laszlo-dev] DeclareEvent(s) going away
Philip Romanik
promanik at laszlosystems.com
Mon Nov 5 11:27:25 PST 2007
Hi Ben,
It's not such a massive change. I can't run runlzunit because my
development platform is native Windows. Perhaps you can give it a whack.
Thanks!
Phil
>
>Wow. Massive.
>
>Phil, I see you're the QA reviewer. Can you please run "ant
>runlzunit" before checking it in? (That does lztest plus runs a lot
>of lzunit tests in the browser in both runtimes.)
>
>Once this is checked in, I think the interactive demos should be
>given a once-over by QA; this change touches so much code that it is
>more likely to contain problems, despite the impeccable quality of
>Tucker's code.
>
>-ben
>
>
>
>On Nov 5, 2007, at 8:17 AM, P T Withington wrote:
>
> > I am about to check in a change that removes DeclareEvent and
> > DeclareEvents. These were private functions, so no API change review
> > is needed. I am removing these to support my fix for LPP-4997, but
> > also because these functions were dynamically adding attributes to a
> > class at run time, which impacts performance in JS2. If you are
> > working in the LFC or writing a class in <script> you will no longer
> > say:
> >
> > class ... {
> > ...
> > DeclareEvent(prototype, 'onSomething');
> > ...
> > }
> >
> > Instead you should simply declare the event property like any other
> > instance variable, but give it a proper initial value:
> >
> > class ... {
> > ...
> > var onSomething = LzDeclaredEvent;
> > ...
> > }
> >
> > Eventually, we will want to give these proper type declarations (as
> > soon as Don gives us the go-ahead). Events are a non-nullable type.
> > Perhaps we should change the way you specify a null event though?
> > Something like:
> >
> > class ... {
> > ...
> > var onSomething:LzEvent = LzEvent.nullEvent;
> > ...
> > }
> >
> > Thoughts?
> >
> > ---
> >
> > Note: There are no changes to the usage of LZX <event> tag. The
> > compiler will automatically translate the <event> tag to the new JS
> > format.
More information about the Laszlo-dev
mailing list