Bem vindo. Este é um blog de novas idéias e tudo que vier à cabeça

EventDispatcher nada mais é que um evento de broadcast para configurar Listeners (objetos “escutadores”) que recebem o Evento e chamam a função associada a ele. Um exemplo: se você já usou a classe Key, dá pra ver que não é difícil adicionar um Listener a uma tecla enquanto você configura eventos, como onKeyDown, para ver se determinada tecla já foi acionada pelo usuário. Bom, mesmo se você nunca ouviu falar de EventDispatcher, há uma grande chance de já ter usado componentes e funções que utilizam o addEventListener, e não há dúvida de que você já usou a classe EventDispatcher sem saber. Bom, o objetivo desse mini-tutorial é explicar um pouco o que está por trás dos conceitos e como essa classe pode ser útil em seus projetos.
EventDispatcher possui um grupo de Listeners para cada evento que dá broadcast. Ele é bom quando você precisa de Listeners diferentes para diferentes eventos. Outra coisa que devemos notar é a habilidade do EventDispatcher de ter funções como parte de uma coleção de eventos. EventDispatcher é orientado a eventos, então você pode ter funções que serão chamadas uma vez que o evento é sinalizado ao seu broadcast.

actionscript-code

EventDispatcher nada mais é que um evento de broadcast para configurar Listeners (objetos “escutadores”) que recebem o Evento e chamam a função associada a ele. Um exemplo: se você já usou a classe Key, dá pra ver que não é difícil adicionar um Listener a uma tecla enquanto você configura eventos, como onKeyDown, para ver se determinada tecla já foi acionada pelo usuário. Bom, mesmo se você nunca ouviu falar de EventDispatcher, há uma grande chance de já ter usado componentes e funções que utilizam o addEventListener, e não há dúvida de que você já usou a classe EventDispatcher sem saber. Bom, o objetivo desse mini-tutorial é explicar um pouco o que está por trás dos conceitos e como essa classe pode ser útil em seus projetos.

EventDispatcher possui um grupo de Listeners para cada evento que dá broadcast. Ele é bom quando você precisa de Listeners diferentes para diferentes eventos. Outra coisa que devemos notar é a habilidade do EventDispatcher de ter funções como parte de uma coleção de eventos. EventDispatcher é orientado a eventos, então você pode ter funções que serão chamadas uma vez que o evento é sinalizado ao seu broadcast.

Tá mas isso tudo junto? “Che facciamo, Ronaldo?”

Antes de começar a meter a mão na massa, você deve entender como o broadcast é incializado. Da maneira mais básica: EventDispatcher é simplesmente um container de métodos que são dados a uma instância de broadcasting quando essa é inicializada. Dando uma olhadinha nessa função estática, nós podemos ver como os objetos devem ser configurados para começar a sessão de broadcast.

static function inicializar(objeto:Object):void {
if(_fEventDispatcher == undefined) {
_fEventDispatcher = new EventDispatcher();
}
object.addEventListener = _fEventDispatcher.addEventListener;
object.removeEventListener = fEventDispatcher.removeEventListener;
object.dispatchEvent = _fEventDispatcher.dispatchEvent;
object.dispatchQueue = _fEventDispatcher.dispatchQueue;
}

Executando esse método (inicializar), nós vemos quatro métodos e uma instância do EventDispatcher, que é passada para o objeto que a função recebe como parâmetro. O objeto pode agora chamar esses métodos como se fossem deles – ou no seu escopo. Quando o evento de broadcast começa, o “broadcaster” inicia um loop através de todos os listeners daquele evento e então chama a função associada a ele.

(continua…)

Tipo o final do episódio do Heroes, saca?

| warmachine | 15 de julho de 2009

Nenhum Comentário »


Nenhum comentário ainda.

Comente também








Desenvolvido por Kaus Midia | Powered by Wordpress.org