Hi Frank,

Thanks for the reminder.  I’ll wait a few days to see if there is any
other input before trying to implement this.  The main output is using
Google Closure Library which uses goog.bind and may also write a named
property for @export, so it would be good to make sure other’s can’t think
of any compatibility issues with trying this scheme with GCL.

-Alex

On 7/16/15, 2:21 AM, "Frank Wienberg" <fr...@jangaroo.net> wrote:

>Hi guys,
>honestly I didn't read through the whole thread, but just wanted to remind
>you of what we collected about binding methods in the Apache Flex Wiki:
>https://cwiki.apache.org/confluence/display/FLEX/Simulating+AS3+language+f
>eatures+in+JavaScript+using+AMD+and+ES5#SimulatingAS3languagefeaturesinJav
>aScriptusingAMDandES5-Boundmethods
>Maybe it helps / clarifies things!
>
>Cheers
>-Frank-
>
>On Wed, Jul 15, 2015 at 1:18 PM, Michael Schmalle
><teotigraphix...@gmail.com
>> wrote:
>
>> On Tue, Jul 14, 2015 at 7:11 PM, Alex Harui <aha...@adobe.com> wrote:
>>
>> > Bummer.
>> >
>> > Did you try:
>> >
>> >   this.addEventListener("mousedown", simpleButton_mousedownHandler);
>> >
>> > The “this.” might be creating a pattern that isn’t handled.  I’m sort
>>of
>> > hoping Mike will finish his mother-in-law’s bathroom and find time to
>> > start in on some way to pass context so we don’t have to one-off these
>> > patterns.
>> >
>>
>> I'm done as of last Friday but my wife keeps inventing more things for
>>me
>> to do around the house, like buying 4 pieces of trim for the doors and
>> baseboard.
>>
>> I am VERY short on time right now as it's summer and the kids are home,
>> blah blah. :) Plus I still need to keep working on my AIR projects for
>>my
>> fall goal.
>>
>> I guess, if you can create a new thread and clearly explain the problem
>>and
>> solution I can then look at it with a clean slate and figure out how
>>much
>> time it might take me to do given the current emitter's state.
>>
>> I know I did something with the other compiler and event listeners, I
>>would
>> have to look.
>>
>> Mike
>>
>>
>>
>> >
>> > -Alex
>> >
>> > On 7/14/15, 3:50 PM, "Josh Tynjala" <joshtynj...@gmail.com> wrote:
>> >
>> > >Alex,
>> > >
>> > >The change you made worked for the case where the function is
>>assigned
>> to
>> > >a
>> > >variable, but it doesn't account for the function being passed as an
>> > >argument to a function.
>> > >
>> > >This still doesn't work for me:
>> > >
>> > >this.addEventListener("mousedown",
>>this.simpleButton_mousedownHandler);
>> > >
>> > >However, as a workaround, I can do this, for now:
>> > >
>> > >var mouseDownListener:Function = this.simpleButton_mousedownHandler;
>> > >this.addEventListener("mousedown", mouseDownListener);
>> > >
>> > >- Josh
>> > >
>> > >On Sun, Jun 28, 2015 at 10:13 PM, Alex Harui <aha...@adobe.com>
>>wrote:
>> > >
>> > >>
>> > >>
>> > >> On 6/28/15, 2:21 PM, "Michael Schmalle" <teotigraphix...@gmail.com>
>> > >>wrote:
>> > >>
>> > >> >On Sun, Jun 28, 2015 at 5:17 PM, Josh Tynjala
>><joshtynj...@gmail.com
>> >
>> > >> >wrote:
>> > >> >
>> > >> >> Yes, that is correct.
>> > >> >>
>> > >> >> In case it wasn't obvious, event listeners are the typical use
>>case
>> > >> >>where
>> > >> >> you'd pass a reference to a member function somewhere else
>>where a
>> > >> >> reference needs to be saved in a variable. AS3 made this easy by
>> > >> >> automatically binding member functions. JavaScript usually
>>requires
>> > >>some
>> > >> >> manual intervention to get event listeners to be called with the
>> > >>right
>> > >> >> scope.
>> > >> >>
>> > >> >
>> > >> >Yeah the compiler does this already for anonymous functions, it
>> > >>creates a
>> > >> >self var pointing to 'this' and then uses self in the anonymous
>> > >>function's
>> > >> >body.
>> > >>
>> > >> Actually, that ‘self’ stuff is for AS lexical scoping.  Josh is
>>more
>> > >> interested in the use of goog.bind for function identifiers.
>>FalconJX
>> > >> handles that correctly in most cases for addEventListener and other
>> > >> callbacks, but I guess we don’t handle this scenario.
>> > >>
>> > >> I can try to take a look at it, but if you want to, search for
>> > >>GOOG_BIND.
>> > >>
>> > >> >
>> > >> >I wasn't aware of this problem though, can you create a JIRA
>>ticket?
>> I
>> > >> >probably will be the one that tackles it since I am sure Alex
>>doesn't
>> > >>have
>> > >> >time to do something like this and test it as well.
>> > >>
>> > >> Well, I can probably get it working, but I’m sure I won’t test it
>>as
>> > >>well
>> > >> as you will.
>> > >>
>> > >> -Alex
>> > >>
>> > >>
>> >
>> >
>>

Reply via email to