Mais ninguém passou por isso ? Módulos só em .mxml mesmo ?

[]'s
-- 
Atenciosamente, Pergentino Araújo.
Arquiteto Java/Flex
MSc. Profissional - Engenharia de Software
Adobe Certified Expert - Flex 3 with AIR


2009/10/15 Pergentino Araújo <[email protected]>

> Só pra esclarecer, os trechos de código que eu coloquei no email são do SDK
> e não são meus.
>
> São os erros pontuais (trechos de código) que apareceram quando eu dei um
> debug.
>
> []'s
>
> 2009/10/15 Pergentino Araújo <[email protected]>
>
> Reativando esta thread... :) (Cuidado, post grande)
>>
>> Seguinte, não sei se identifiquei um bug no compilador (3.2) ou alguma
>> coisa está errada no paradigma OO do Flex (Bem profundo hein ?!) rsrsrs
>>
>> Bem, gostaria de compartilhar com vocês e levantar a discussão.
>>
>> Olha só, criei um projeto teste (em anexo), onde eu tenho a seguinte
>> estrutura:
>> index.mxml (Application)
>> ModuloPrincipal.mxml (herda Module)
>> ModuloSecundario.as (herda ModuloPrincipal)
>>
>> Quando eu coloco o ModuloPrincipal para ser compilado como módulo e
>> carrego ele no index.mxml, tudo funciona perfeitamente. O problema está
>> quando eu mudo a compilação do módulo para ser o ModuloSecundario (que herda
>> de ModuloPrincipal). Simplemente não funciona e, o mais estranho, ele dá
>> erro no seguinte trecho de código (do SDK):
>>
>> (Dentro do ModuloPrincipal tem um DataGrid simples, vide projeto em anexo)
>>
>> if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0)
>> {
>>   var headerBGSkinClass:Class = getStyle("headerBackgroundSkin");
>>   var headerBGSkin:IFlexDisplayObject = new headerBGSkinClass();
>>   if (headerBGSkin is ISimpleStyleClient)
>>     ISimpleStyleClient(headerBGSkin).styleName = this;
>>   headerBG.addChild(DisplayObject(headerBGSkin));
>> }
>> "Instantiation attempted on a non-constructor"
>>
>> Ele dá erro por que não existe a definição de skin (headerBackgroundSkin)
>> para este DataGrid (*poxa, eu tenho que criar essa skin ?*) E outra, pra
>> que fazer um if na versão, se esta versão é a 3.2. [?]
>>
>> Bem, depois deste problema, eu *aceitei* e criei uma skin e ele ainda
>> pede outra skin para separação e, *aceitando* novamente, criei também.
>>
>> Depois de ter feito essa STA*, ele mostra a grid com as imagens que
>> configurei no Skin, até aí beleza, mas depois de clicar na grid e passar o
>> mouse por cima da sua header, ele lança outro erro lá em
>> CursorManagerImpl.as:
>>
>> // If the current cursor has changed...
>> if (item.cursorID != currentCursorID)
>> {
>>   if (cursorHolder.numChildren > 0)
>>     cursorHolder.removeChildAt(0);
>>
>>   currentCursor = new item.cursorClass();
>> ...
>> "Instantiation attempted on a non-constructor"
>>
>> *A mãe de quem !?* *
>>
>> Bem, quando cheguei a este erro, percebi que essas STA's que eu faria no
>> código para cada situação iria aumentar e, sobretudo, poderia aparecer cada
>> vez mais erros dentro do código.
>>
>> Alguém concorda comigo de que deveria funcionar da mesma forma como
>> funciona quando eu coloco o ModuloPrincipal.mxml para ser o módulo ? Afinal
>> cadê o conceito de Herança ?
>>
>> Alguém já passou por isso ?
>>
>>
>> *Legenda:
>> *** STA = *Solução Técnica Alternativa (Gambiarra)*
>> * A mãe de quem !? = *Termo utilizado no nordeste, equivalente a "O que é
>> isso?"*
>> *
>>
>> --
>> Atenciosamente, Pergentino Araújo.
>> Arquiteto Java/Flex
>> MSc. Profissional - Engenharia de Software
>> Adobe Certified Expert - Flex 3 with AIR
>>
>>
>>
>> 2009/10/14 Pergentino Araújo <[email protected]>
>>
>>> Esquece, identifiquei o problema no código, estava na forma como estava
>>> carregando o módulo.
>>>
>>> []'s
>>>
>>> 2009/10/14 Pergentino Araújo <[email protected]>
>>>
>>> Olá pessoal, vim atrás de uma resposta pra o "não-funcionamento" de
>>>> módulos em .AS, que na teoria deveria funcionar (pelo menos pelo que propõe
>>>> o paradigma OO rsrsr).
>>>>
>>>> Seguinte, eu tenho a seguinte estrutura:
>>>>
>>>> *ModuloPAI.mxml*: Objeto mxml que é baseado/herda de mx.modules.Module
>>>> *ModuloHerdado.as*: Classe Action Script que herda de *ModuloPAI.MXML*
>>>>
>>>> Bem, na compilação eu indico que o módulo a ser gerado é *
>>>> ModuloHerdado.as* e o mesmo é gerado normalmente, só que o problema
>>>> está na hora em que ele é carregado pelo meu ModuleLoader... ele
>>>> simplesmente não é exibido.
>>>>
>>>> Achei estranho, pois teoricamente deveria funcionar, pois a classe .as
>>>> herda inclusive as implementações, que no caso, não foi sobrescrita nenhuma
>>>> função.
>>>>
>>>> Alguém tentou montar esta estrutura e deu certo?
>>>>
>>>> Segue link de referência:
>>>> http://livedocs.adobe.com/flex/3/html/help.html?content=modular_2.html
>>>>
>>>> --
>>>> Atenciosamente, Pergentino Araújo.
>>>> Arquiteto Java/Flex
>>>> MSc. Profissional - Engenharia de Software
>>>> Adobe Certified Expert - Flex 3 with AIR
>>>>
>>>
>>>
>>>
>>> --
>>> Atenciosamente, Pergentino Araújo.
>>> Arquiteto Java/Flex
>>> MSc. Profissional - Engenharia de Software
>>> Adobe Certified Expert - Flex 3 with AIR
>>>
>>
>
>
> --
> Atenciosamente, Pergentino Araújo.
> Arquiteto Java/Flex
> MSc. Profissional - Engenharia de Software
> Adobe Certified Expert - Flex 3 with AIR
>

--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

<<inline: 35F.gif>>

Responder a