[Ginga-argentina] Interaccion con LUA y NCL

Nicolas Ignacio Roldan niko_cbes at hotmail.com
Wed Apr 11 20:31:33 CEST 2012


Buenas Gente de Ginga!

Es una consulta con respecto a LUA y su tratamiento.
Mi objetivo es lograr que  cuando presiono el boton "INFO" se muestre una <media > que se carga desde un archivo ".lua"( en donde mostraria infomacion de acuerdo a la tecla que se presione [roja,amarillo,etc]);  luego si presiono el boton "MENU" vuelva a la pantalla anterior. y asi sucesivamente... la iteracion con el usuario seria  que presione "INFO" y "MENU", asi a cada rato.
bueno.... la primera vez anda bien, presiono "INFO" y me aparece la informacion que carga desde "main.lua" y puedo presionar el "ROJO","AMARILLO","VERDE" y "AZUL" para que me muestre la informacion ... Pero si presiono "MENU" (para regresar) y luego de nuevo "INFO"... ya no me muestra ni me permite la interaccion con el "main.lua"


Tengo el siguiente codigo (Trabajo con 3 archivos : main.ncl/metodos.ncl/main.lua)




------------- el main.ncl ----------------------------



<?xml version="1.0" encoding="ISO-8859-1"?>
<ncl id="main" xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile">

    <head>
        <regionBase>
            <region id="scriptLua" width="50%" height="80%" left="0%" top="0%" zIndex="3" />
            <region id="idBotonInfo" right="2%" bottom="2%" width="50" height="50" zIndex="3"  />
            <region id="idBotonReturn" right="2%" bottom="2%"  width="50" height="50" zIndex="3"  />
         </regionBase>
        

        <descriptorBase>
        
            <descriptor id="descLua" region="scriptLua" focusIndex="appFocus"/>
            <descriptor id="descImagenInfo" region="idBotonInfo"/>
            <descriptor id="descImagenReturn" region="idBotonReturn" />        
                     
        </descriptorBase>
        

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


    <body>        
        
        <port id="pInfo" component="imgBotonInfo"/>
        
        <media id="foco" type="application/x-ginga-settings">
            <property name="service.currentKeyMaster" value="appFocus"/>
        </media>
        
        <media id="LuaPresentation" src="lua/main.lua" descriptor="descLua" />
        <media id="imgBotonInfo" src="Imagen/info.png" descriptor="descImagenInfo"/>
        <media id="imgBotonReturn" src="Imagen/menu.png" descriptor="descImagenReturn"/>
   
        
        <link xconnector="metodo#onBeginEndMenu">
            <bind role="onSelection" component="imgBotonInfo">
                <bindParam name="oSetTecla" value="INFO"/>
            </bind>
            <bind role="abort" component="imgBotonInfo"/>
            <bind role="start" component="LuaPresentation"/>
        </link>
        <link xconnector="metodo#onBeginEndMenu">
            <bind role="onSelection" component="imgBotonReturn">
                <bindParam name="oSetTecla" value="MENU"/>
            </bind>
            <bind role="start" component="imgBotonInfo"/>
            <bind role="abort" component="LuaPresentation"/>
        </link>
      
    </body>
</ncl>

-------------------------------------------------------------------------------------------------


------------------ metodos.ncl--------------------------------------

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Generated by NCL Eclipse -->
<ncl id="metodos" xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile">
    <head>
        <connectorBase>
            
                <causalConnector id="onBeginStart">
                    <simpleCondition role="onBegin" />
                    <simpleAction role="start"/>
                </causalConnector>
                
                <causalConnector id="onEndStop">
                    <simpleCondition role="onEnd"/>
                    <simpleAction role="stop"/>
                </causalConnector>
                   
                <causalConnector id="onBeginEndMenu">
                    <connectorParam name="oSetTecla"/>
                    <simpleCondition role="onSelection" key="$oSetTecla"/>
                    <compoundAction operator="seq">
                        <simpleAction role="start" qualifier="seq"  max="unbounded"/>
                        <simpleAction role="abort" qualifier="seq"  max="unbounded"/>
                    </compoundAction>
                </causalConnector>


        </connectorBase>
    </head>
    <body>

    </body>
</ncl>
------------------------------------------------------------------------------------------------

------------------------- main.lua ----------------------------------

function handler(evt)

local titulo=''
local color=''

limpiar()

if evt.class=='key' and evt.type=='press' then 
        
        if     evt.key == 'RED' or evt.key == 'F1' then      
            titulo='PILOTOS'
            color='red'    
            leyendaTitulo(color,titulo)          
        elseif evt.key == 'BLUE' or evt.key=='F4' then
             titulo='PISTA'
             color='blue'  
             leyendaTitulo(color,titulo)
        elseif evt.key == 'YELLOW' or evt.key=='F3' then
              titulo='INFORMACION'
              color='yellow'  
              leyendaTitulo(color,titulo)
        elseif evt.key == 'GREEN' or evt.key=='F2' then 
              titulo='CLIMA'
              color='green'        
              leyendaTitulo(color,titulo)
        end 
    end    
end


function leyendaTitulo(color,titulo)
    
    canvas:attrColor(color)
    canvas:attrFont('vera',30, 'bold')
    canvas:drawText(10, 10, titulo)
    canvas:flush()    
    
end


function limpiar()
    
    local leyendaTitulo=canvas:new('Imagen/FondoAzulDegradadoCentro.png')
    canvas:compose(0,0,leyendaTitulo)
    
end

event.register(handler)
---------------------------------------------------------------------------------------


Espero que no sea una consulta engorrosa... estoy seguro que es algo que no estoy haciendo bien
Desde ya muchas Gracias!
saludos
nico
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.ourproject.org/pipermail/ginga-argentina/attachments/20120411/9d8b0d07/attachment-0001.htm 


More information about the Ginga-argentina mailing list