I've only seen the fully qualified class when there is a conflict in the file.
Peter > On Mar 1, 2014, at 5:07 AM, "Carlos Rovira" <carlos.rov...@codeoscopic.com> > wrote: > > Hi Alex, > > in the class file only flexjs event is imported, so it should be that one > and not flash event. If this is not what is happening, I think we have a > bug in the compiler. I should not need to use a fully qualified name each > time I use a event to ensure the right event. what do you think? > > > 2014-03-01 0:55 GMT+01:00 Alex Harui <aha...@adobe.com>: > >> In textChangeHandler, are you sure "new Event" will resolve to >> org.apache.flex.events.Event and not flash.events.Event? >> >>> On 2/28/14 3:48 PM, "Carlos Rovira" <carlosrov...@apache.org> wrote: >>> >>> Peter, Alex, >>> >>> I'm having problems with this issue, since I think there's no reference to >>> flash.events.Event (I was already aware of this restriction) in my >>> modifications in TextInput, so all should be FlexJS events >>> (org.apache.flex.events.Event). A similar example is in CheckBox >>> component. >>> >>> What I'm trying to do is make TextInput to throw "change" events when user >>> type a character (a classic Flex use case). In SWF the type coercion is >>> thrown. >>> >>> TypeError: Error #1034: Type Coercion failed: cannot convert >>> flash.events::Event@1093d2f71 to org.apache.flex.events.Event. >>> >>> Note: In JS updating the input text does nothing, although enter key is >>> performing the change and running changeHandler method in final app (I >>> suppose due to EditableTextKeyboardController) >>> >>> >>> Mis changes are basic. In TextInput.as, add the following lines: >>> >>> [Event(name="change", type="org.apache.flex.events.Event")] >>> >>> ... >>> >>> private var _strand:IStrand; >>> >>> public function set strand(value:IStrand):void >>> { >>> _strand = value; >>> >>> model = UIBase(_strand).model as ITextModel; >>> model.addEventListener("textChange", textChangeHandler); >>> } >>> >>> public function textChangeHandler(event:Event):void >>> { >>> dispatchEvent(new Event("change")); >>> } >>> >>> what do you think about it? >>> >>> Thanks >>> >>> >>> >>> >>> >>> 2014-02-27 20:33 GMT+01:00 Alex Harui <aha...@adobe.com>: >>> >>>> We're trying not to dispatch flash.events.Event in FlexJS (since there >>>> isn't an equivalent in JS). So the change event should be dispatching >>>> org.apache.flex.events.Event and the component's event metadata also >>>> needs >>>> to say that it is dispatching an org.apache.flex.events.Event and the >>>> event handling code should be importing and using >>>> org.apache.flex.events.Event instead of flash.events.Event. >>>> >>>> -Alex >>>> >>>>> On 2/27/14 11:27 AM, "Carlos Rovira" <carlosrov...@apache.org> wrote: >>>>> >>>>> Hi, >>>>> >>>>> I'm having a problem with FlexJS events. >>>>> >>>>> * In TodoListView (a extension of ViewBase) if I use in a component >>>>> something like: change="logTodo(event)" >>>>> >>>>> and the method is >>>>> >>>>> public function logTodo(event:Event):void { >>>>> // something >>>>> } >>>>> >>>>> a type coercion error is thrown that said org.apache.flex.events.Event >>>> is >>>>> not flash.events.Event >>>>> >>>>> I need to use: public function >>>>> logTodo(event:org.apache.flex.events.Event):void { ... } to make it >>>> work >>>>> or >>>>> it doesn't compile >>>>> >>>>> So it seems there's a scope problem in MXML, >>>>> >>>>> What do you think about it? >>>>> >>>>> >>>>> -- >>>>> Carlos Rovira >>>>> http://about.me/carlosrovira >>>> >>>> -- >>>> <http://about.me/carlosrovira> >>>> Carlos Rovira >>>> <http://about.me/carlosrovira> >>>> <http://about.me/carlosrovira>http://about.me/carlosrovira > > > -- > Carlos Rovira > Director de TecnologĂa > M: +34 607 22 60 05 > F: +34 912 94 80 80 > http://www.codeoscopic.com > http://www.directwriter.es > http://www.avant2.es