[Laszlo-dev] DeclareEvent(s) going away
Benjamin Shine
ben at laszlosystems.com
Mon Nov 5 10:55:01 PST 2007
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