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