Como ficaria a utilização do Swiz dentro de um componente?

O evento disparado pelo objeto será escutado pelo controller da mesma
maneira que o evento disparado pelo IEventDispatcher?

On Apr 8, 7:35 pm, RafaelViana <[email protected]> wrote:
> Depois de tanta resistência me rendi a usar um framework MVC no Flex.
> Estou implementando SWIZ em um novo projeto. Estou usando como base
> para meus estudos o ótimo post no blog do 
> Janderson:http://www.jandersonfc.com/tutorial-basico-swiz-framework-1-0/
>
> Mas, estou com dúvidas sobre a estruturação do SWIZ em componentes.
> Por exemplo, tenho um componente de AutoComplete que lista os
> produtos, o qual deve ter a lista preenchida no momento da criação.
> Tenho o controller dos produtos que é usado para a tela de produtos,
> ela fica responsável por ouvir o evento.
>
> O código do componente está abaixo:
>
> O evento não está chegando até o Controller:
>
> 1) Posso usar o dispatchEvent do DisplayObject?
> 2) Se instancio o [Dispatcher] ele fica nulo. Por quê?
> 3) Preciso instanciar o CampoProduto no Beans.mxml?
>
> public class CampoProduto extends AutoComplete
>         {
>                 public function CampoProduto()
>                 {
>                         super();
>                         this.width = 110;
>
>                         this.addEventListener( FlexEvent.CREATION_COMPLETE, 
> listar );
>                 }
>
>                 //[Dispatcher]
>                 //public var dispatcher:IEventDispatcher;
>
>                 public function listar(evento:FlexEvent):void
>                 {
>                         dispatchEvent( new 
> EventoProduto(EventoProduto.LISTAR_PRODUTOS) );
>                 }
>
>                 [EventHandler(event="EventoProduto.PRODUTOS_RETORNADOS")]
>                 public function aoListarProdutos(evento:EventoProduto):void
>                 {
>                         dataProvider = evento.produtos;
>                 }
>
>         }
>
> Obrigado.

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a