Ir para o conteúdo

 Voltar a Linguagem NCL
Tela cheia

Problemas com focusIndex ao utilizar NCL importado (docFilho)

26 de Agosto de 2010, 12:12 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 29 vezes
Caros colegas,

Tenho dois documentos, um nclPai e um nclFilho, utilizando no nclPai o importDocumentBase, o context,  e o conector, eu chamo o nclFilho sem problemas, e ao fechar ele volta para o nclPai numa boa.

No  nclPai eu possuo 6 (seis) componentes “media” que atuam como menu, e estão funcionando perfeitamente, abrindo o nclFilho diretamente os 10 (dez) menus também funcionam perfeitamente, nos dois documentos, desta forma, o focusIndex  funciona perfeitamente.

Quando eu executo o nclPai e, através dele chamo o nclFilho, o focusIndex  do nclFilho não funciona corretamente, como se perdesse a ordem, e ao fechar o nclFilho e retornar ao nclPai, o menu do nclPai para de funcionar corretamente também.

Pensei que poderia ser o seguinte, no nclPai é realizado o import do documento nclFilho e, através do context e do conector é chamado o BODY ID=”” do nclFilho, sabendo que os descriptores não estão dentro do BODY, e é nele que são definidos os focusIndex, pensei que poderia ser isso, pois estaria puxando só o que esta no BODY, mas ainda não encontrei o problema e muito menos a solução.

Alguém pode me ajudar?

Abraços! 

Autor: Bruno Pereira


88 comentários

  • A687fdf6ce6756b24515f09e00e106ce?only path=false&size=50&d=404José Geraldo de Sousa Junior(usuário não autenticado)
    26 de Agosto de 2010, 12:20

     

    Olá Bruno,

    seria possível que você colasse no post a parte do código que se refere à sua pergunta? Pode ser que analisando o código a gente consiga descobrir algo que esteja acarretando o problema.

     

    []s,

    Geraldo.

    • 0790ab4784032a11ea5ebf47496ccf1a?only path=false&size=50&d=404Bruno Pereira(usuário não autenticado)
      26 de Agosto de 2010, 12:40

       

      Claro, mas só poderei fazer isso a noite, meu HD ficou em casa.

      Seria interessante por o código completo, ou apenas algo específico?

      Abraços!

    • 0790ab4784032a11ea5ebf47496ccf1a?only path=false&size=50&d=404Bruno Pereira(usuário não autenticado)
      26 de Agosto de 2010, 12:42

       

      Claro, mas estou sem o meu HD aqui, então a noite posto.

      Seria interessante postar o código completo ou apenas algum trecho específico?

       

      Abraços!

      • A687fdf6ce6756b24515f09e00e106ce?only path=false&size=50&d=404José Geraldo de Sousa Junior(usuário não autenticado)
        26 de Agosto de 2010, 12:54

         

        Se os documentos pai e filho não forem muito grandes, cole os dois. Se forem muito grandes, cole os trechos que sejam relevantes, como os links que iniciam e param o NCL filho, os descritores com os focusIndex, e outros.

        []s

  • 0790ab4784032a11ea5ebf47496ccf1a?only path=false&size=50&d=404Bruno Pereira(usuário não autenticado)
    26 de Agosto de 2010, 21:03

     

    Pessoal, segue ai parte do código, espero que ajude.

    lembro que o erro ocorre quando eu executo o nclPai e, através dele chamo o nclFilho, o focusIndex  do nclFilho não funciona corretamente, como se perdesse o foco, e ao fechar o nclFilho e retornar ao nclPai, o menu do nclPai para de funcionar corretamente também.

    NCLPAI

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <ncl xsi:schemaLocation="http://www.ncl.org.br/NCL3.0/EDTVProfile www.​ncl.​org.​br/N​CL3.​0/pr​ofil​es/N​CL30​EDTV​.xsd​"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile" id="capa">

    <head>
    <importedDocumentBase>
    <importNCL documentURI="cdAPartilha.ncl" alias="docCdAPartilha"/>
    </importedDocumentBase>
       
    <regionBase>
    ...
    </regionBase>
    ...
    <descriptorBase>
    <descriptor focusBorderColor="yellow" focusBorderWidth="4" focusIndex="1" id="dGradeA1" moveRight="3" moveDown="2" region="rgGradeA1"/>
    <descriptor focusBorderColor="yellow" focusBorderWidth="4" focusIndex="2" id="dGradeA2" moveRight="4" moveUp="1" region="rgGradeA2"/>
    <descriptor focusBorderColor="yellow" focusBorderWidth="4" focusIndex="3" id="dGradeB1"$ moveLeft="1" moveRight="5" moveDown="4" region="rgGradeB1"/>
    <descriptor focusBorderColor="yellow" focusBorderWidth="4" focusIndex="4" id="dGradeB2" moveLeft="2" moveRight="6" moveUp="3" region="rgGradeB2"/>
    </descriptorBase>

    <connectorBase>
    <importBase documentURI="connectorBase.ncl" alias="con"/>
    </connectorBase>
    </head>

    <body id="capa1">
    <context id="docNcl2" refer="docCdAPartilha#corpo"/>

    <PORTAS>

    <MIDIAS>

    <LINK CHAMANDO O NCLFILHO>
    <link xconnector="con#onKeySelectionStart" id="iniciaAPartilha">
    <bind role="onSelection" component="gradeA1">
    </bind>
    <bind role="start" component="docNcl2"/>
    </link>
    </body>
    </ncl>

    NCLFILHO

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <ncl xsi:schemaLocation="http://www.ncl.org.br/NCL3.0/EDTVProfile www.​ncl.​org.​br/N​CL3.​0/pr​ofil​es/N​CL30​EDTV​.xsd​"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile" id="cdAPartilha">
    <head>

    <!-- TRANSICOES -->
    ...
    <!-- REGIOES -->
    ...
    <!-- DESCRIPTORES -->
    <descriptorBase>
    <descriptor id="dBt001" region="rgBt001" focusBorderColor="white" focusBorderWidth="4" focusIndex="8" moveDown="2" moveUp="10" moveLeft="14" transIn="tFade" />   
    <descriptor id="dBt002" region="rgBt002" focusBorderColor="white" focusBorderWidth="4" focusIndex="9" moveDown="3" moveUp="1" moveLeft="14" transIn="tFade" />   
    <descriptor id="dBt003" region="rgBt003" focusBorderColor="white" focusBorderWidth="4" focusIndex="10" moveDown="4" moveUp="2" moveLeft="14" transIn="tFade" />   
    <descriptor id="dBt004" region="rgBt004" focusBorderColor="white" focusBorderWidth="4" focusIndex="11" moveDown="5" moveUp="3" moveLeft="14" transIn="tFade" />   
     ...
    </descriptorBase>

    <!-- CONECTORES -->
    <connectorBase>
    <importBase documentURI="connectorBase.ncl" alias="con"/>
    </connectorBase>

     </head>
      
     <body id="corpo">
     
    <!-- PORTAS -->
     ...
    <!-- MIDIAS -->
    ...
    <!-- TERMINA APLICAÇÃO E VOLTA A CAPA-->
    <link xconnector="con#onKeySelectionStop">
    <bind component="bt010" role="onSelection">
    </bind>
    <bind component="corpo" role="stop"/> 
    </link>  

    </body>
    </ncl>
     

    • 201656b83337aa76f8a1de40ce226268?only path=false&size=50&d=404Günter Herweg(usuário não autenticado)
      27 de Agosto de 2010, 9:57

       

      Ola, não sei se voçê ja fez isso, pois não vi o código completo, mas tente o seguinte:

      No doc Pai um link que seta o focus index ao iniciar.

      <link xconnector="con#onBeginSet" id="l1">
      <bind role="onBegin" component="capa1">
      </bind>
      <bind role="set" component="settings" interface="currentFocus">

             <bindParam name="var" value='"1">

      </bind>

       
      </link>

      E no doc Filho a mesma coisa.

      <link xconnector="con#onBeginSet" id="l1">
      <bind role="onBegin" component="corpo">
      </bind>
      <bind role="set" component="settings" interface="currentFocus">

             <bindParam name="var" value='"8">

      </bind>

       
      </link>

      Voce ainda pode tentar setando a variavel de ambiente service.currentKeyMaster, nesse caso ao inves do focusIndex voce usa o nome da midia que precisa ganhar o foco.

       

       

      • 0790ab4784032a11ea5ebf47496ccf1a?only path=false&size=50&d=404Bruno Pereira(usuário não autenticado)
        27 de Agosto de 2010, 20:43

         

        Gunter,Valeu a dica, eu fiz isso, até rodou a aplicação, mas apresentou no console o seguinte erro:Ginga-NCL Emulator v1.1.1Copyright PUC-Rio (Laboratorio TeleMidia), 1989-2007C:/Users/Bruno/Documents/tvDigital/tccNew/capa.nclfile:C:/Users/Bruno/Documents/tvDigital/tccNew/capa.nclrole set with less than minimum binds. (setFocus/set)le set with less than minimum binds. (setFocus/set) - role set with less than minimum binds. (setFocus/set)le set with less than minimum binds. (setFocus/set) Alguma dica? 

        • 201656b83337aa76f8a1de40ce226268?only path=false&size=50&d=404Günter Herweg(usuário não autenticado)
          30 de Agosto de 2010, 13:11

           

          Creio que isso não afeta a execucao do programa, mas faça o seguinte:

          Verifique o conector que voce usa no link que seta o foco. A role "set" deve estar assim:

          <simpleAction role="set" max="unbounded" qualifier="par"/>

           Isso quer dizer que o link espera pelo menos 2 "set".

          Basta retirar os atributos "max" e "qualifier" se voce só usar o set apenas uma vez no link.

          at.,

          Günter

Concurso ITU-T de Aplicações para IPTV 2012

13 de Agosto de 2012, 19:38, por Desconhecido

Gostaríamos de lembrar aos possíveis interessados que o prazo de registro para participação no Concurso ITU-T de Aplicações para IPTV 2012 (IPTV Application Challenge) se encerra nesta semana, dia 15 de agosto de 2012. Já o prazo para a submissão de aplicações se encerra no dia 07 de setembro de 2012.



NCL Eclipse 1.6 disponível

10 de Janeiro de 2012, 21:19, por Desconhecido

Caros membros da Comunidade Ginga,



Concursos de Aplicações Ginga-NCL

22 de Setembro de 2011, 3:22, por Desconhecido

    Gostaríamos de relembra-los de que há dois concursos de aplicações Ginga-NCL com inscrições ainda abertas. O convite é aberto a toda a comunidade de desenvolvedores de aplicações para o Middleware Ginga-NCL, em nível internacional. São os seguintes concursos:



Novas versões: Ginga e Ginga-NCL Virtual Set-top Box (v.0.12.3)

1 de Agosto de 2011, 20:58, por Desconhecido



Algumas Boas Notícias da Comunidade Ginga

28 de Julho de 2011, 21:31, por Desconhecido

Autor: Roberto Azevedo