ok, I see your point. I did not look at it that way. So, it is a bug then.
ben.clinkinbeard wrote: > > Event metadata is definitely not ignored in AS. Take a look at just > about any class in the framework and you'll see plenty [Event] tags. > It is there specifically to provide code hinting and support for > binding in MXML. > > The problem here is that the code completion engine is offering class > constants that don't exist. They seem to be based on the constant > value, with some reformatting applied to convert to all uppercase and > inserting underscores anywhere there is a lowercase next to uppercase. > So MyEvtClass.FLY = "flyAway" appears in the completion list as > MyEvtClass.FLY_AWAY > > Ben > > --- In flexcoders@yahoogroups.com > <mailto:flexcoders%40yahoogroups.com>, Tony Alves <[EMAIL PROTECTED]> wrote: > > > > Jurgen, > > I believe the problem here is that you are setting up a metadata tag on > > your class in actionscript which is not needed and I think it was said > > that Event meta tags are ignored by the compiler in ActionScript > > classes. Someone here can clear that up for us. I am not sure why, > but > > it is only needed on MXML when setting up an event. Because you are > > extending your class as an EventDispatcher, you only just need to > > dispatch the event you are setting up. > > > > package components > > { > > import flash.events.Event; > > public class MyClass extends EventDispatcher > > { > > public static const MY_EVENT:String = "myEvent"; > > > > private function myFunction():void > > { > > dispatchEvent(new Event(MyClass.MY_EVENT)); > > } > > } > > } > > > > THEN you can instantiate a MyClass variable and add an event listener: > > var mine:MyClass = new MyClass(); > > mine.addEventListener(MyClass.MY_EVENT,someHandlerFunction); > > > > The code assist is trying to show you the events on the event > dispatcher > > and there really is just the two by default (activate and deactivate). > > Don't ask me why though. I always set up my Event types as constant > > vars on my class, so I know I need to access them off my class name. > > This should work the same way for custom Events also. > > > > Maybe an adobe flex expert can explain this better than I, but that is > > my understanding. > > > > Regards, > > Tony > > > > P.S. ( you were borrowing (some call it hijacking) another thread and I > > think it was getting missed.) > > > > Jurgen Wrote: >>>>>>>>>>>>>>>>>>>>>>> > > There seems to be an issue using a custom class' event metadata in an > > addEventListener statement. Here is an example: > > > > package com.example > > { > > > > import flash.events.EventDispatcher; > > > > [Event(name="myEvent", type="flash.events.Event")] > > > > public class MyClass extends EventDispatcher > > { > > > > // class code > > > > private function myFunction():void > > { > > dispatchEvent(new Event("myEvent")); > > } > > > > } > > > > } > > > > When using an instance of that class and creating an addEventListener in > > code (not using it with MXML tags) Flex Builder's code assist lists the > > event, but splits it apart and shows it as Event.MY_EVENT. > > > > That of course throws a compiler error. > > > > Is this by design and how would we work with an event in a custom class > > using the [Event...] metatag? > > > > I haven't checked to see if this is different with a custom event. I'll > > check on that next, but I wanted to see if anyone has run into this > > problem before. > > > > Thanks, > > > > Jurgen > > > >