Tag: systemmanager

Eviter d’utiliser stage.addEventListener()

En Flex/ActionScript, il n’est pas rare de vouloir écouter un évènement au niveau le plus haut et de voir du code tel que:

if (stage) {
    stage.addEventListener(MonEvent.MON_TYPE, _monHandler);
} else {
    this.addEventListener(Event.ADDED_TO_STAGE, function(e:Event):void{
        stage.addEventListener(MonEvent.MON_TYPE, _monHandler);
    });
}

En effet, lors de l’inialisation des composants Flex, l’attribut stage n’est pas encore disponible.

Pourtant, il est plus simple et plus propre d’utiliser SystemManager:

systemManager.addEventListener(MonEvent.MON_TYPE, _monHandler);

Ce morceau de code ne plantera pas car systemManager est initilisé dès le lancement de l’application et est toujours présent ...

Lire la suite