Pular para conteúdo

Tag popup

Tag popup

 

A tag/componente popup representa um componente visual que fica escondido na interface e é posteriormente apresentado, tomando a atenção para si, na forma de um popup.

 

Herança

O popup possui todas as características da tag layout. 

Veja:

 

Características

Além das características herdadas, o popup possui também as seguintes características:

Propriedades e atributos

 

Propriedade Tipo Valor Padrão Descrição
autoScopeNode Boolean true Define o comportamento dos campos de edição que estão dentro deste popup quando a propriedade "scopeNode" for nil.  true - se scopeNode for nil, os componentes de edição usarão o scopeNode do formulário.  false - se scopeNode for nil, os componentes de edição não funcionarão, pois não haverá um scopeNode.  Observação: O valor padrão destee atributo para plugins que forem compilados com o SDK 3.4 ou inferior é false. 
cancelable Boolean true Indica se o popup pode ser cancelado pelo usuário.  Quando false, a única maneira de fechar o popup é via programação ao invocar o método "close" com o parâmetro "forcar" igual a true. 
backOpacity Float   0.85 Indica a opacidade do fundo ao exibir este popup.  Um valor entre 0.0 e 1.0, onde 0.0 = Fundo totalmente transparente e 1.0 = Fundo totalmente opaco.  Esta opacidade se refere ao fundo que é aplicado a fim de tirar a atenção da interface e chamar a atenção para o popup. 
drawContainer Boolean true Define se o popup vai automaticamente desenhar uma borda que delimita o conteúdo do popup. 
scopeNode, nodeObject ou ** **node Objeto Nodo nil Define em qual objeto nodo de um NodeDatabase os controles de edição deste popup devem salvar os dados.  Observações:  Só é possível alterar esta propriedade utilizando código Lua. Se nil, o nodeObject do form será utilizado para salvar dados se a propriedade autoScopeNode for true. Esta propriedade é um "atalho" para os métodos "setNodeObject" e "getNodeObject" desta tag.  Veja também:  NodeDatabase Escopo de Dados 

Eventos

Nome do evento Descrição
onClose Este evento é invocado quando o popup for fechado.  Parâmetros: canceled - Boolean indicando se o popup foi cancelado ou se foi fechado normalmente.
onCanClose Este evento é invocado quando o popup estiver prestes a ser fechado. Retorne false para impedir o popup de ser fechado ou true para autorizar o fechamento do popup.  Parâmetros: canceled - Boolean indicando se o popup será cancelado ou se será fechado normalmente. 
onCalculateSize Se você quiser definir a largura e altura do popup de forma dinâmica, trate este evento.  Parâmetros: dueToResize - Booleano indicando se a interface mudou de tamanho e por isso é necessário recalcular o tamanho do popup. width - Largura padrão height - Altura padrão  Retorne 2 números, o primeiro contendo a largura e o segundo contendo a altura (Exemplo: return 100, 200;) 
onNodeReady  Este evento é invocado quando o objeto nodo de um NodeDatabase associado a este popup está pronto para ser usado.  Quando este evento é chamado, você pode assumir: a propriedade "node" do poup está diferente de nil e possui uma referência válida para um objeto nodo. O processo de carregamento do nodeDatabase associado já chegou ao fim. Você já consegue acessar os dados armazenados nele normalmente. 
onNodeUnready Este evento é invocado quando o objeto nodo de um NodeDatabase associado a este popup deixa de estar pronto para ser usado.  Quando este evento é chamado, você pode assumir: a propriedade "node" do popup não contém mais uma referência válida para um objeto nodo. 
onNodeChanged Este evento é invocado um objeto nodo de um NodeDatabase é associado ou desassociado a este popup.  Ver NodeDatabase 

 

Veja Tratando eventos do Lua Form

 

Métodos

É possível invocar métodos dos controles usando código LUA.

Método Descrição
popup:show();  ou  popup:showPopup();  Exibe o popup na interface.  O popup será exibido no centro a interface.  
popup:close();  ou **  **popup:closePopup();  Fecha o popup. 
popup:show(placement, control);  ou  popup:showPopup(placement, control);  ou  popup:showPopupEx(placement, control);  Exibe o popup na interface permitindo o programador definir onde ela será exibida.  Parâmetros: placement - String que define onde o popup será exibido em relação ao "control". Pode ser um destes valores: "bottom" - abaixo de control "top" - acima de control "left" - à esquerda de control "right" - à direita de control "center" - no centro de control "bottomCenter" - abaixo de control e centralizado horizontalmente "topCenter" - acima de control e centralizado horizontalmente "leftCenter" - à esquerda de control e centralizado verticalmente "rightCenter" - à direita de control e centralizado verticalmente "mouse" - onde o mouse está atualmente "mouseCenter" - centralizado onde o mouse está atualmente.  control - Um controle/tag lua à qual o parâmetro "placement" se refere. Se nil, o form será utilizado.
popup:close(cancelar, forcar);  ou  popup:closePopup(cancelar, forcar); Fecha o popup.  Parâmetros: cancelar - Booleano indicando se o popup será cancelado ou se será fechado normalmente. Caso este parâmetro seja omitido, o valor padrão "false" será adotado.  forcar - Booleano indicando se é para forçar o fechamento do popup mesmo se ele tiver atributo "cancelable" com true. Caso este parâmetro seja omitido, o valor padrão "false" será adotado. 
popup:setNodeObject(nodeObject) Define em qual objeto nodo de um NodeDatabase os controles de edição deste popup devem salvar os dados.  Parâmetros: nodeObject – Um objeto nodo (de um NodeDatabase) ou nil.  Observação: Se nil, o nodeObject do form será utilizado para salvar dados.  Veja também:  NodeDatabase Escopo de Dados 
popup:getNodeObject(); Retorna o objeto nodo (de um NodeDatabase) no qual os controles de edição deste popup devem salvar os dados.  nil é retornado quando não há nodo associado.  Observação: Se nil, o nodeObject do form será utilizado para salvar dados.  Veja também:  NodeDatabase Escopo de Dados 

 

Exemplos

Exemplo 1 - Uma imagem pequena que pode ser ampliada através do uso do popup

 

\<?xml version="1.0" encoding="UTF-8"?> \<form name="frmFichaTeste">                 \<!-- Popup -->         \<popup name="popMeuPopup" width="400" height="400" backOpacity="0.5">                 \<label align="top" text="Veja só a imagem maior!" autoSize="true"/>                 \<image align="client" src="/imagens/fenix.png"/>                \</popup>                \<!-- Invocador do Popup -->         \<image src="/imagens/fenix.png" left="20" top="20" width="80" height="80"/>                            \<button text="Ampliar" width="70" left="25" top="102"                 onClick="self.popMeuPopup:show();"/> \</form>

 

 

Image

 

 

Image

 

Neste exemplo foram usadas também:

Exemplo 2 -  Mostrando o popup abaixo de um componente na interface

 

\<?xml version="1.0" encoding="UTF-8"?> \<form name="frmFichaTeste">                 \<!-- Popup -->                   \<popup name="popMeuPopup" width="100" height="100" backOpacity="0.5">                 \<label align="client" horzTextAlign="center" text="Adaga + 1, de tal característica e outro atributo." />                      \</popup>               \<!-- Invocador do Popup -->               \<label name="labNome" left="20" top="20" width="80" text="Adaga + 1"                horzTextAlign="trailing" height="20"/>                             \<button text="i" width="20" left="105" top="20" height="20"                 onClick="self.popMeuPopup:show('bottom', self.labNome);"/> \</form>

 

 

Image             Image


Created with the Personal Edition of HelpNDoc: What is a Help Authoring tool?