2009-09-18 9 views
0

Est-il possible d'envoyer un événement à partir d'un objet lorsqu'un écouteur d'événement est ajouté à ce même objet, sans surcharger la méthode addEventListener de cette classe?Dispatch Event When Listener Is Added - ActionScript3

Je travaille sur une application modulaire en AS3. Plusieurs modules enregistrent des événements sur un composant dans le fichier mxml de l'application principale. Je voudrais déclencher un événement à chaque fois qu'un événement est enregistré dans le composant à partir de n'importe quel module, sans mettre "dispatchEvent (someEvent)" après chaque addEventListener.

Toute contribution serait grandement appréciée?

+0

Quel est le problème avec le remplacement? On dirait que l'ajustement parfait ici serait de sous-classer EventDispatcher et d'en hériter. – spender

+0

Spender, postez cela comme une réponse, donc je peux le changer. – fenomas

Répondre

1

Je ne connais pas de built-in qui vous aidera, mais vous pouvez simplement écrire votre propre fonction pour les encapsuler.

public static function addEvent(ed:IEventDispatcher, evt:String, handler:Function) { 
    ed.addEventListener(evt, handler, false, 0, true); 
    ed.dispatchEvent(new Event("addedEvent")); 
}