[Ginga-argentina] Interaccion con LUA y NCL
Santiago Lombardi
santiago.lombardi at gmail.com
Fri Apr 13 21:23:18 CEST 2012
Nicolas, el Set de la variable lo0 podes ver en el codigo que pegue ayer.
saludos
On Fri, Apr 13, 2012 at 4:14 PM, leo <lisasmendi at lifia.info.unlp.edu.ar>wrote:
> Recién tengo un poco de tiempo.
> Te hago una pequeña explicación:
> El *service.currentKeyMaster *es una variable de sistema que indica
> sobre que media se están enviando los evento de tecla.
> Este valor está asociado a un descriptor sobre el cual vos estás
> mostrando un media.
>
> Entonces, cuando en tu código definís lo siguiente:
>
> <media id="foco" type="application/x-ginga-settings">
> <property name="service.currentKeyMaster" value="appFocus"/>
> </media>
>
> Le estás indicando al sistema que apunte los eventos de tecla a el media
> que tenga un descriptor con ese mismo focusIndex.
>
> Ahora si ese media se detiene, y no hay otro media usando ese descriptor,
> el valor del service.currentKeyMaster pasa a modificarse por otro valor.
> Es por eso que te indique que modifiques ese mismo valor cada vez que
> inicies ese media, es un parche. Sería mejor que ese media lua no se pare.
> Porque tiene un costo en cuanto performance.
> Otra cosa más, cuando uno detiene un media Lua, los valores de las
> variables internas a ese media se pierden.
>
> Para modificar el service.currentKeyMaster deberías definir un
> causalConnector para modificar esa variable y con eso alcanza.
>
>
>
>
>
> El 13 de abril de 2012 12:11, Nicolas Ignacio Roldan <
> niko_cbes at hotmail.com> escribió:
>
>
>> ¿Alguien podria mas o menos orientarme en esta duda? [image: Confundido]
>> saludos!
>> *nico
>>
>> *
>> ------------------------------
>> From: niko_cbes at hotmail.com
>> To: ginga-argentina at lists.ourproject.org
>> Date: Thu, 12 Apr 2012 21:08:04 +0000
>>
>> Subject: Re: [Ginga-argentina] Interaccion con LUA y NCL
>>
>> Hola *Leo*!
>> Muchas gracias por la respuesta! sos el que siempre esta [image: Guiño]
>> ... no entendi, ó mejor dicho nose cómo ó donde hacer eso que decis vos ["proba
>> volviendo a modificar el valor de la variable *
>> "service.currentKeyMaster" * con el valor de "appFocus" cada vez que
>> inicias el main.lua"]
>>
>> De hecho nose bien cómo funciona el *"service.currentKeyMaster" *[image:
>> Confundido] En el documento *ABNTNBR15606* dice
>> ["Identificador (id) del elemento
>> <media> que detenta el control de
>> las claves de navegación; si el
>> elemento no está siendo
>> presentado o no está pausado, el
>> control es del formateador "]
>> ... mucho mucho todavia no me doy cuenta para que esta.
>>
>> Perdon mi ignorancia
>> Saludos Leo!
>> *nico*
>>
>>
>> ------------------------------
>> Date: Wed, 11 Apr 2012 18:56:03 -0300
>> From: lisasmendi at lifia.info.unlp.edu.ar
>> To: ginga-argentina at lists.ourproject.org
>> Subject: Re: [Ginga-argentina] Interaccion con LUA y NCL
>>
>> Hola nico, proba volviendo a modificar el valor de la variable *
>> "service.currentKeyMaster" * con el valor de "appFocus" cada vez que
>> inicias el main.lua.
>>
>> El 11 de abril de 2012 15:31, Nicolas Ignacio Roldan <
>> niko_cbes at hotmail.com> escribió:
>>
>> *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[image: Confundido]
>> Desde ya muchas Gracias!
>> saludos
>> *nico*
>>
>> __________________________________________Lista de correo
>> Ginga-argentina at lists.ourproject.org
>> cambiar suscripción:
>> https://lists.ourproject.org/cgi-bin/mailman/listinfo/ginga-argentina
>> Sitio web: http://comunidad.ginga.org.ar
>> Wiki: http://wiki.ginga.org.ar
>>
>>
>>
>>
>> --
>> Saludos leo
>>
>>
>> __________________________________________Lista de correo
>> Ginga-argentina at lists.ourproject.org cambiar suscripción:
>> https://lists.ourproject.org/cgi-bin/mailman/listinfo/ginga-argentinaSitio web:
>> http://comunidad.ginga.org.ar Wiki: http://wiki.ginga.org.ar
>>
>> __________________________________________Lista de correo
>> Ginga-argentina at lists.ourproject.org cambiar suscripción:
>> https://lists.ourproject.org/cgi-bin/mailman/listinfo/ginga-argentinaSitio web:
>> http://comunidad.ginga.org.ar Wiki: http://wiki.ginga.org.ar
>>
>> __________________________________________Lista de correo
>> Ginga-argentina at lists.ourproject.org cambiar suscripción:
>> https://lists.ourproject.org/cgi-bin/mailman/listinfo/ginga-argentinaSitio web:
>> http://comunidad.ginga.org.ar Wiki: http://wiki.ginga.org.ar
>>
>> __________________________________________Lista de correo
>> Ginga-argentina at lists.ourproject.org
>> cambiar suscripción:
>> https://lists.ourproject.org/cgi-bin/mailman/listinfo/ginga-argentina
>> Sitio web: http://comunidad.ginga.org.ar
>> Wiki: http://wiki.ginga.org.ar
>>
>>
>
>
> --
> Saludos leo
>
>
> __________________________________________Lista de correo
> Ginga-argentina at lists.ourproject.org
> cambiar suscripción:
> https://lists.ourproject.org/cgi-bin/mailman/listinfo/ginga-argentina
> Sitio web: http://comunidad.ginga.org.ar
> Wiki: http://wiki.ginga.org.ar
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.ourproject.org/pipermail/ginga-argentina/attachments/20120413/7f6b0b11/attachment-0001.htm
More information about the Ginga-argentina
mailing list