Programando em NCL 3.0.pdf - Telemidia - PUC-Rio

Programando em NCL 3.0.pdf - Telemidia - PUC-Rio Programando em NCL 3.0.pdf - Telemidia - PUC-Rio

telemidia.puc.rio.br
from telemidia.puc.rio.br More from this publisher
11.07.2015 Views

• class: 'ncl'• type: 'attribution'• name: [string] — nome da propriedade associada ao evento• action: [string] — pode assumir os seguintes valores: 'start','stop', 'abort', 'pause' e 'resume'• value: [string] — novo valor a ser atribuído à propriedadeO campo action de um evento ncl (seja ele de apresentação ou atribuição)pode assumir os valores correspondentes aos seus tipos, como mostrado nasTabelas 10.6 e 10.7. No entanto, o nome das transições na Tabela 10.6 éusado sem o “s” final (“starts” vira “start”), de maneira a unificar a sintaxepara eventos recebidos ou sinalizados pelo NCLua.Exemplo 18.2 — Contador de CliquesVamos supor uma aplicação NCL que exiba um botão Clique aqui emquatro momentos diferentes. Se o usuário selecioná-lo com o controle remotopor pelo menos três vezes, ao final da apresentação será exibido o botão Vocêganhou, caso contrário será exibido o botão Você Perdeu. A Figura 18.4mostra as visões temporal e espacial da aplicação.cliquesarea01 area02 temp area03 area04aqui aqui aqui aqui∞resultado ∞ganhou∞perdeu∞visão temporalvisão espacialaquiganhouOUperdeuFigura 18.4 Visões temporal e espacial do Exemplo 18.2.Não é possível fazer a contagem de cliques puramente em NCL de formasimples, uma vez que não há suporte a expressões aritméticas na linguagem.Neste exemplo, usaremos um NCLua para contar e armazenar o número de382

cliques em uma propriedade, que será consultada ao final para determinar oresultado.O documento NCL mostrado a seguir define um temporizador (“temp”)com quatro âncoras temporais (“area01” até “area04”) durante as quais obotão Clique aqui é exibido. O temporizador também define uma âncoratemporal para exibir o resultado após o botão ser exibido por quatro vezes.Além do temporizador e os botões, o documento define um NCLuaresponsável pela contagem dos cliques e exporta a propriedade “contador”para manter esse valor. A Figura 18.5 mostra a visão estrutural da aplicação.pInicioresultadotemponBeginonEndarea01area02area03area04onBeginstartstopstoponEndstop( ... )aquiganhoustoponBeginstartstopstartonEnd onBeginonBeginonSelectionandtestcontador >= 3startandtestcontador < 3contadorincstartcliquesstartstopstopperdeuFigura 18.5 Visão estrutural do Exemplo 18.2.A porta de entrada da aplicação é o temporizador, que também dispara oNCLua por meio de um elo “onBeginStart”. Cada âncora de exibição dobotão Clique aqui possui um elo “onBeginStart” e “onEndStop” para o383

cliques <strong>em</strong> uma propriedade, que será consultada ao final para determinar oresultado.O documento <strong>NCL</strong> mostrado a seguir define um t<strong>em</strong>porizador (“t<strong>em</strong>p”)com quatro âncoras t<strong>em</strong>porais (“area01” até “area04”) durante as quais obotão Clique aqui é exibido. O t<strong>em</strong>porizador também define uma âncorat<strong>em</strong>poral para exibir o resultado após o botão ser exibido por quatro vezes.Além do t<strong>em</strong>porizador e os botões, o documento define um <strong>NCL</strong>uaresponsável pela contag<strong>em</strong> dos cliques e exporta a propriedade “contador”para manter esse valor. A Figura 18.5 mostra a visão estrutural da aplicação.pInicioresultadot<strong>em</strong>ponBeginonEndarea01area02area03area04onBeginstartstopstoponEndstop( ... )aquiganhoustoponBeginstartstopstartonEnd onBeginonBeginonSelectionandtestcontador >= 3startandtestcontador < 3contadorincstartcliquesstartstopstopperdeuFigura 18.5 Visão estrutural do Ex<strong>em</strong>plo 18.2.A porta de entrada da aplicação é o t<strong>em</strong>porizador, que também dispara o<strong>NCL</strong>ua por meio de um elo “onBeginStart”. Cada âncora de exibição dobotão Clique aqui possui um elo “onBeginStart” e “onEndStop” para o383

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!