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

Reply via email to