Nesse caso a View terá uma referência ao PM e vice versa?

2011/6/28 Keoma Cherulli <keoma...@gmail.com>

> Fato, bem simples mesmo. Sem necessidade de maiores explicações.
> Parece que não acreditei que ficou mais fácil do que antes. =D
> Obrigado
>
> 2011/6/28 Fredy Gadotti <thief...@gmail.com>
>
>> Keoma,
>>
>> é bem o que o Mario explicou, não tem segredo nenhum.
>>
>> Deixei o meu PresentationModel no Beans como Prototype, acredito que pode
>> deixar normal se não precisar de lazy-loading nele, e na implementação do
>> meu PresentationModel simplesmente coloquei um método publico com a Metadata
>> [ViewAdded] e com o tipo da view que ele precise guardar a referência, algo
>> mais ou menos assim:
>>
>> public class UserPresentationModel {
>>  private var view:UserView;
>>   [Dispatcher]
>>  public var dispatcher:IEventDispatcher;
>>  [ViewAdded]
>>  public function setView(value:UserView):void {
>> view = value;
>>  }
>>  public function addNewUserTab():void {
>>  var uf:UserForm = new UserForm();
>>  uf.visible = true;
>>  uf.includeInLayout = true;
>>  view.viewStack.addElement(uf);
>>  view.viewStack.selectedChild = uf;
>> }
>> }
>>
>> Tudo acontece automagicamente e o código da View fica extremamente limpo
>> :)
>>
>>
>> 2011/6/28 Mário Júnior <juninho...@gmail.com>
>>
>>> Mas é tao simples q nem precisa de exemplo... basta usar as metadatas em
>>> qualquer método (desde q sejam public) e em qualquer classe (recomendado
>>> usar em PresentationModels, mas nada impede de usar num Controller, por
>>> exemplo).
>>>
>>> Toda vez q a view (fortemente tipada no argumento do método) aparecer na
>>> tela, o método será executado.
>>> A mesma coisa para o ViewRemoved, para quando a view "sair" da tela.
>>>
>>>
>>> Enquanto o SpringAS e o Parsley tem lentas atualizações/correçoes, o
>>> RobotLegs ainda te obriga a escrever Mediators inuteis e o Mate continuando
>>> hibernando no limbo, o Swiz continua em franco desenvolvimento e mantém-se
>>> muito mais leve q os demais fws :)
>>>
>>> gogogo Swiz!
>>>
>>>
>>> []'s
>>>
>>>
>>>
>>>
>>> Em 28 de junho de 2011 09:35, Keoma Cherulli <keoma...@gmail.com>escreveu:
>>>
>>> Eles ainda não postaram nenhum exemplo prático com a nova funcionalidade
>>>> vide ( https://github.com/swiz/swiz-examples)
>>>>
>>>> se alguém tiver um projetinho desses poderia colocar online/blog/github
>>>> etc
>>>>
>>>>
>>>>
>>>> 2011/6/27 Fredy Gadotti <thief...@gmail.com>
>>>>
>>>>> Testei aqui e funcionou perfeitamente com o jeito que explica no link:
>>>>> http://swizframework.jira.com/wiki/display/SWIZ/View+Mediator
>>>>>
>>>>> Obrigado novamente :)
>>>>>
>>>>>
>>>>> 2011/6/27 Fredy Gadotti <thief...@gmail.com>
>>>>>
>>>>>> Muito obrigado Mário!
>>>>>> Vou dar uma lida e verificar a melhor maneira de adaptar o meu código.
>>>>>>
>>>>>>
>>>>>>
>>>>>> Fredy.
>>>>>>
>>>>>>
>>>>>> 2011/6/27 Mário Júnior <juninho...@gmail.com>
>>>>>>
>>>>>>> Antigamente faziamos assim:
>>>>>>>
>>>>>>> Na View:
>>>>>>>
>>>>>>> [PostConstruct]
>>>>>>> public function postConstructHandler():void
>>>>>>> {
>>>>>>>     pm.view = this;
>>>>>>>     //e la dentro do pm vc pode manipular a view livremente.
>>>>>>> }
>>>>>>>
>>>>>>>
>>>>>>> Depois, o Brian Kotek criou um Custom Metadata Processor q faz isso
>>>>>>> automaticamente:
>>>>>>> https://github.com/brian428/swiz-viewmediatorlib/wiki
>>>>>>>
>>>>>>>
>>>>>>> E, desde 2 semanas atrás, foi lançado o swiz 1.2 já com o View
>>>>>>> Mediator Pattern implementado:
>>>>>>> http://swizframework.jira.com/wiki/display/SWIZ/View+Mediator
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> []'s
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Em 27 de junho de 2011 22:38, Fredy Gadotti 
>>>>>>> <thief...@gmail.com>escreveu:
>>>>>>>
>>>>>>>> Hello List<Pessoas>,
>>>>>>>>
>>>>>>>> qual a melhor maneira de trabalhar com Swiz e PresentationModel,
>>>>>>>> quando eu preciso interagir diretamente com a View, e não uma View 
>>>>>>>> Passiva,
>>>>>>>> como demonstra a maioria dos exemplos de PresentationModel.
>>>>>>>>
>>>>>>>> Tenho uma View com uma TabBar e um ViewStack e preciso adicionar um
>>>>>>>> novo NavigatorContent ao meu ViewStack.
>>>>>>>>
>>>>>>>> Fico no aguardo, desde já obrigado! :)
>>>>>>>>
>>>>>>>>
>>>>>>>> Att,
>>>>>>>>
>>>>>>>>
>>>>>>>> Fredy.
>>>>>>>>
>>>>>>>> --
>>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>>>> flexdev@googlegroups.com
>>>>>>>> Para sair da lista, envie um email em branco para
>>>>>>>> flexdev-unsubscr...@googlegroups.com
>>>>>>>> Mais opções estão disponíveis em
>>>>>>>> http://groups.google.com/group/flexdev
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Mario Junior
>>>>>>> http://blog.mariojunior.com/
>>>>>>> @mariojunior
>>>>>>>
>>>>>>> --
>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>>> flexdev@googlegroups.com
>>>>>>> Para sair da lista, envie um email em branco para
>>>>>>> flexdev-unsubscr...@googlegroups.com
>>>>>>> Mais opções estão disponíveis em
>>>>>>> http://groups.google.com/group/flexdev
>>>>>>
>>>>>>
>>>>>>
>>>>>  --
>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>> flexdev@googlegroups.com
>>>>> Para sair da lista, envie um email em branco para
>>>>> flexdev-unsubscr...@googlegroups.com
>>>>> Mais opções estão disponíveis em
>>>>> http://groups.google.com/group/flexdev
>>>>>
>>>>
>>>>  --
>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
>>>> Para sair da lista, envie um email em branco para
>>>> flexdev-unsubscr...@googlegroups.com
>>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>>
>>>
>>>
>>>
>>> --
>>> Mario Junior
>>> http://blog.mariojunior.com/
>>> @mariojunior
>>>
>>> --
>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
>>> Para sair da lista, envie um email em branco para
>>> flexdev-unsubscr...@googlegroups.com
>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>
>>
>>  --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
>> Para sair da lista, envie um email em branco para
>> flexdev-unsubscr...@googlegroups.com
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>
>
>  --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
> Para sair da lista, envie um email em branco para
> flexdev-unsubscr...@googlegroups.com
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>



-- 
[]'s
Leonardo

Linux User #488650
Ubuntu User #27045
Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece

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

Responder a