A solução proposta pelo João é aparentemente mais correcta.
A solução dos bindings na skin é mais "confortável" mas também mais pesada.

linkedIn <http://pt.linkedin.com/in/jsaleiro> João Saleiro
Chief Technology Officer
Tel:    00351 916 077 097
Email:  [email protected] <mailto:[email protected]>
Skype:  joao.saleiro <callto://joao.saleiro>

Webfuel Solutions <http://www.webfuel.pt> www.webfuel.pt <http://www.webfuel.pt>
Lisbon, Portugal


On 05-07-2011 17:19, João Fernandes wrote:
Exacto, a segunda solução é o que tinha explicado no email anterior. A meu ver binding na skin é errado pela razão que já apresentei assim como, se criares uma nova skin para o teu componente, terás de repetir a lógica na skin, o que me parece errado.

João Fernandes

2011/7/5 Ricardo Araújo <[email protected] <mailto:[email protected]>>

    Saleiro,

    das duas opções que apresentas uma é usando binding (mas pelo que
    aprendi hj, não é mto bom para a performance)

    a outra podemos compara-la com a que o João Fernandes indicou? à
    medida que temos os dados vamos atribuindo a cada componente!?

    On Jul 5, 4:22 pm, Jorge Raimundo <[email protected]
    <mailto:[email protected]>> wrote:
    > João,
    >
    > Muito obrigado.
    >
    > 2011/7/5 João Saleiro <[email protected]
    <mailto:[email protected]>>
    >
    >
    >
    >
    >
    >
    >
    > >  Jorge,
    >
    > > Talvez isto ajude:
    >
    >
    >http://www.riapt.org/2010/10/17/slides-da-apresentacao-skinning-no-fl...
    > > ;)
    >
    > >   [image: linkedIn] <http://pt.linkedin.com/in/jsaleiro> João
    Saleiro   Chief
    > > Technology Officer       Tel: 00351 916 077 097  Email:
    > > [email protected] <mailto:[email protected]>
     Skype: joao.saleiro         [image: Webfuel
    > > Solutions] <http://www.webfuel.pt>www.webfuel.pt
    <http://www.webfuel.pt>
    > > Lisbon, Portugal
    >
    > > On 05-07-2011 15:26, Ricardo Araújo wrote:
    >
    > > "Não esquecer que nas views não deverá constar qualquer tipo
    de lógica da
    > > interacção entre os vários membros do componente."
    >
    > >  podes explicar melhor?
    >
    > > No dia 5 de Julho de 2011 15:22, João Fernandes <
    > > [email protected]
    <mailto:[email protected]>> escreveu:
    >
    > >> Jorge o caso em concreto o que terás de fazer é no
    partAdd/partRemove
    > >> validar que skin está a ser adicionada (neste caso o
    loginView) e adicionar
    > >> / remover os eventListeners necessários. Não esquecer que nas
    views não
    > >> deverá constar qualquer tipo de lógica da interacção entre os
    vários membros
    > >> do componente.
    >
    > >> 2011/7/5 Jorge Raimundo <[email protected]
    <mailto:[email protected]>>
    >
    > >>> Ahhhhh!!!! Fez-se luz.
    >
    > >>>  Agora esta história das SkinParts faz todo o sentido! Muito
    obrigado.
    >
    > >>>  Ainda estou muito verde nestas andanças de programar
    componentes em AS
    > >>> que fazem uso de skins.
    >
    > >>>  Obrigado
    >
    > >>> 2011/7/5 Ricardo Araújo <[email protected]
    <mailto:[email protected]>>
    >
    > >>>> no lado do as, nesse caso AirgileView tens de declarar
    variaveis como
    > >>>> SkinPart.
    > >>>> O Id tem que coincidir
    >
    > >>>> ex:
    > >>>> [SkinPart(required="true")]
    > >>>> public var loginView: LoginView;
    >
    > >>>> On Jul 5, 2:43 pm, Jorge Raimundo <[email protected]
    <mailto:[email protected]>> wrote:
    > >>>> > Boas!
    >
    > >>>> > Estou a tentar implementar esta forma de programar, mas
    há uma coisa
    > >>>> que não
    > >>>> > estou a conseguir fazer.
    >
    > >>>> > Usando o exemplo do João, pressupondo que temos:
    >
    > >>>> > public class AirgileView extends SkinnableComponent
    >
    > >>>> > >     {
    > >>>> > >         //  etc
    > >>>> > >     }
    >
    > >>>> > > No CSS:
    >
    > >>>> > > core|AirgileView
    > >>>> > > {
    > >>>> > >     skin-class:
    >
    > >>>>
    ClassReference("com.airgile.crm.skins.petro.views.core.AirgileViewSkin");
    > >>>> > > }
    >
    > >>>> > > No AirgileViewSkin.mxml:
    >
    > >>>> > > <s:Group id="contentHolder"
    > >>>> > >         left="0" right="0" top="63" bottom="20">
    >
    > >>>> > > <users:LoginView id="loginView"
    > >>>> > >             width="100%" height="100%"
    > >>>> > >             includeIn="login"/>
    > >>>> > > </s:Group>
    >
    > >>>> > Como é que na classe ActionScript AirgileView lido com os
    eventos de
    > >>>> > loginView?
    >
    > >>>> > Cumprimentos,
    > >>>> > Jorge
    >
    > >>>>   --
    > >>>> Recebeu esta mensagem porque está inscrito no grupo
    "Mailing List da
    > >>>> Comunidade Portuguesa de Rich Internet Applications
    -www.riapt.org <http://www.riapt.org>"
    > >>>> dos Grupos do Google.
    >
    > >>>> Para publicar uma mensagem neste grupo, envie um e-mail para
    > >>>> [email protected] <mailto:[email protected]>.
    > >>>> Para anular a inscrição neste grupo, envie um e-mail para
    > >>>> [email protected]
    <mailto:riapt%[email protected]>.
    > >>>> Para ver mais opções, visite este grupo em
    > >>>>http://groups.google.com/group/riapt?hl=pt-PT.
    >
    > >>>    --
    > >>> Recebeu esta mensagem porque está inscrito no grupo "Mailing
    List da
    > >>> Comunidade Portuguesa de Rich Internet Applications
    -www.riapt.org <http://www.riapt.org>" dos
    > >>> Grupos do Google.
    > >>> Para publicar uma mensagem neste grupo, envie um e-mail para
    > >>> [email protected] <mailto:[email protected]>.
    > >>> Para anular a inscrição neste grupo, envie um e-mail para
    > >>> [email protected]
    <mailto:riapt%[email protected]>.
    > >>> Para ver mais opções, visite este grupo em
    > >>>http://groups.google.com/group/riapt?hl=pt-PT.
    >
    > >>  --
    >
    > >> João Fernandes
    > >>  --
    > >>  Recebeu esta mensagem porque está inscrito no grupo "Mailing
    List da
    > >> Comunidade Portuguesa de Rich Internet Applications
    -www.riapt.org <http://www.riapt.org>" dos
    > >> Grupos do Google.
    > >> Para publicar uma mensagem neste grupo, envie um e-mail para
    > >> [email protected] <mailto:[email protected]>.
    > >> Para anular a inscrição neste grupo, envie um e-mail para
    > >> [email protected]
    <mailto:riapt%[email protected]>.
    > >> Para ver mais opções, visite este grupo em
    > >>http://groups.google.com/group/riapt?hl=pt-PT.
    >
    > >  --
    > > Recebeu esta mensagem porque está inscrito no grupo "Mailing
    List da
    > > Comunidade Portuguesa de Rich Internet Applications
    -www.riapt.org <http://www.riapt.org>" dos
    > > Grupos do Google.
    > > Para publicar uma mensagem neste grupo, envie um e-mail para
    > > [email protected] <mailto:[email protected]>.
    > > Para anular a inscrição neste grupo, envie um e-mail para
    > > [email protected]
    <mailto:riapt%[email protected]>.
    > > Para ver mais opções, visite este grupo em
    > >http://groups.google.com/group/riapt?hl=pt-PT.
    >
    > >  --
    > > Recebeu esta mensagem porque está inscrito no grupo "Mailing
    List da
    > > Comunidade Portuguesa de Rich Internet Applications
    -www.riapt.org <http://www.riapt.org>" dos
    > > Grupos do Google.
    > > Para publicar uma mensagem neste grupo, envie um e-mail para
    > > [email protected] <mailto:[email protected]>.
    > > Para anular a inscrição neste grupo, envie um e-mail para
    > > [email protected]
    <mailto:riapt%[email protected]>.
    > > Para ver mais opções, visite este grupo em
    > >http://groups.google.com/group/riapt?hl=pt-PT.
    >
    >
    >
    >  LinkedIn.gif
    > 2KViewDownload
    >
    >  Webfuel.gif
    > 4KViewDownload

    --
    Recebeu esta mensagem porque está inscrito no grupo "Mailing List
    da Comunidade Portuguesa de Rich Internet Applications -
    www.riapt.org <http://www.riapt.org>" dos Grupos do Google.

    Para publicar uma mensagem neste grupo, envie um e-mail para
    [email protected] <mailto:[email protected]>.
    Para anular a inscrição neste grupo, envie um e-mail para
    [email protected]
    <mailto:riapt%[email protected]>.
    Para ver mais opções, visite este grupo em
    http://groups.google.com/group/riapt?hl=pt-PT.




--

João Fernandes
--
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google. Para publicar uma mensagem neste grupo, envie um e-mail para [email protected]. Para anular a inscrição neste grupo, envie um e-mail para [email protected]. Para ver mais opções, visite este grupo em http://groups.google.com/group/riapt?hl=pt-PT.

--
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade 
Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google.

Para publicar uma mensagem neste grupo, envie um e-mail para 
[email protected].
Para anular a inscrição neste grupo, envie um e-mail para 
[email protected].
Para ver mais opções, visite este grupo em 
http://groups.google.com/group/riapt?hl=pt-PT.

<<inline: LinkedIn.gif>>

<<inline: Webfuel.gif>>

Responder a