O FWLayer é um componente desenvolvido para facilitar a organização e a divisão das informações na tela por meio de janelas dividas em linhas e colunas.
New
Método de criação do objeto da classe.
FWLayer(): New ( [ ] ) --> Nil
Nome | Tipo | Descrição | Obrigatório | Referência |
Array of Record |
addCollumn
Método responsável por adicionar a quantidade colunas desejada.
FWLayer(): addCollumn ( < cId>, < nPercWidth>, [ lFixed], [ cIDLine] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cId | Caracter | Este parâmetro é um código de identificação para aquela coluna que está sendo criada e que é de controle total do desenvolvedor, então, este código é criado e controlado pelo desenvolvedor sendo ele quem define o conteúdo. | X | |
nPercWidth | Numérico | Neste parâmetro é informado a valor em porcentagem que o tamanho da largura da coluna criada ocupará na tela. | X | |
lFixed | Lógico | Define se o tamanho daquela coluna é fixo. | ||
cIDLine | Caracter | Este parâmetro é um código de identificação para linha que a coluna é adicionada. |
addLine
Método responsável por adicionar linhas.
FWLayer(): addLine ( < cId>, < nPercHeight>, [ lFixed] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cId | Caracter | Este parâmetro é um código de identificação para aquela linha que está sendo criada e que é de controle total do desenvolvedor, então, este código é criado e controlado pelo desenvolvedor sendo ele quem define o conteúdo. | X | |
nPercHeight | Numérico | Neste parâmetro é informado a valor em porcentagem que o tamanho da altura da linha criada ocupará na tela. | X | |
lFixed | Lógico | Define se o tamanho daquela linha é fixo. |
addWindow
Método responsável por criar janelas nas colunas.
FWLayer(): addWindow ( < cIDCollumn>, < cIDWindow>, [ cTitle], [ nPercHeight], [ lEnable], [ lFixed], [ bAction], [ cIDLine], [ bGotFocus] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDCollumn | Caracter | Este parâmetro é um código de identificação da coluna que a janela que esta sendo criada pertencerá. | X | |
cIDWindow | Caracter | Este parâmetro é um código de identificação para aquela janela que está sendo criada e que é de controle total do desenvolvedor, então, este código é criado e controlado pelo desenvolvedor sendo ele quem define o conteúdo. | X | |
cTitle | Caracter | Este parâmetro define o título da janela que esta sendo criada. | ||
nPercHeight | Numérico | Neste parâmetro é informado a valor em porcentagem que o tamanho da altura da janela criada ocupará na coluna que pertencerá. | ||
lEnable | Lógico | Se o parâmetro for Verdadeiro permite que o usuário maximize e minimize a janela criada, caso contrário esta opção é desativada. | ||
lFixed | Lógico | Se o parâmetro for Verdadeiro permite que o tamanho da janela seja alterado. | ||
bAction | Bloco de código | Define um bloco de código que será executado no momento do clique na barra do título da janela. | ||
cIDLine | Caracter | Este parâmetro é um código de identificação para linha da coluna que a janela esta sendo adicionada. | ||
bGotFocus | Bloco de código | Define um bloco de código que será executado no momento que a barra do título da janela receber o foco. |
getColPanel
Método que retorna o objeto do painel da Coluna.
FWLayer(): getColPanel ( < cIDCollumn>, [ cIDLine] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDCollumn | Caracter | Este parâmetro é um código de identificação da coluna que deseja ser retornada. | X | |
cIDLine | Caracter | Este parâmetro é um código de identificação da linha da coluna que será retornada. |
getLinePanel
Método que retorna o objeto do painel da Linha.
FWLayer(): getLinePanel ( [ cIDLine] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDLine | Caracter | Este parâmetro é um código de identificação da linha será retornada. |
getWinPanel
Método que retorna o objeto do painel da Janela.
FWLayer(): getWinPanel ( < cIDCollumn>, < cIDWindow>, [ cIDLine] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDCollumn | Caracter | Este parâmetro é um código de identificação da coluna que pertence a janela que será retornada. | X | |
cIDWindow | Caracter | Este parâmetro é um código de identificação da janela que deseja ser retornada. | X | |
cIDLine | Caracter | Este parâmetro é um código de identificação da linha que a coluna da janela que será retornada pertence. |
Init
Através desse método você define a inicialização do objeto como quem será o objeto pai. Exemplo: Dialog, Window, Panel e etc.
FWLayer(): Init ( < oOwner>, [ lCloseBtn] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
oOwner | Objeto | Objeto que deverá ser o pai do FWLayer. | X | |
lCloseBtn | Lógico | Caso seu FWLayer pertença a uma Dialog e este parâmetro for passado como Verdadeiro, será adicionado no canto superior direito um botão para fechamento da janela, caso seja Falso o botão não será habilitado. |
setColSplit
Habilita a opção de Split da coluna.
FWLayer(): setColSplit ( < cIDCollumn>, [ nAlign], [ cIDLine], [ bAction] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDCollumn | Caracter | Este parâmetro é um código de identificação da coluna que será habilitada a opção de Split. | X | |
nAlign | Numérico | Este parâmetro indica se o slpit ficará do lado direito ou esquerdo da coluna.Opções: CONTROL_ALIGN_RIGHT ou CONTROL_ALIGN_LEFT | ||
cIDLine | Caracter | Este parâmetro é um código de identificação da linha da coluna que será habilitado o split. | ||
bAction | Bloco de código | Define um bloco de código que será executado no momento do clique na barra e split. |
setWinTitle
Atribui um título para a janela.
FWLayer(): setWinTitle ( < cIDCollumn>, < cIDWindow>, < cTitle>, [ cIDLine] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDCollumn | Caracter | Este parâmetro é um código de identificação da coluna que pertence a janela que será atribuída o título. | X | |
cIDWindow | Caracter | Este parâmetro é um código de identificação da janela que será atribuída o título. | X | |
cTitle | Caracter | Este parâmetro é o texto do título que será exibido. | X | |
cIDLine | Caracter | Este parâmetro é um código de identificação para linha da coluna que a janela esta sendo atribuído o título. |
winChgState
Muda o estado da janela de aberta para fechada ou vice e versa.
FWLayer(): winChgState ( < cIDCollumn>, < cIDWindow>, [ cIDLine] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDCollumn | Caracter | Este parâmetro é um código de identificação da coluna que pertence a janela que mudará de estado. | X | |
cIDWindow | Caracter | Este parâmetro é um código de identificação da janela que mudará de estado. | X | |
cIDLine | Caracter | Este parâmetro é um código de identificação para linha da coluna da janela que mudará de estado. |
winOpen
Abre a janela.
FWLayer(): winOpen ( < cIDCollumn>, < cIDWindow>, [ cIDLine] ) -->
Nome | Tipo | Descrição | Obrigatório | Referência |
cIDCollumn | Caracter | Este parâmetro é um código de identificação da coluna que pertence a janela que será aberta. | X | |
cIDWindow | Caracter | Este parâmetro é um código de identificação da janela que será aberta. | X | |
cIDLine | Caracter | Este parâmetro é um código de identificação para linha da coluna da janela que será aberta. |
getLayerHeight
Retorna a altura total do TPanel que comporta a FWLayer
Sintaxe
FWLayer(): getLayerHeight() → numeric → nHeight
Retorno
nHeight → numeric → Altura total do TPanel interno da FWLayer (TPanel:nHeight)
getLayerWidth
Retorna a largura total do TPanel que comporta a FWLayer
FWLayer(): getLayerWidth() → numeric → nWidth
nWidth → numeric → Largura total do TPanel interno da FWLayer (TPanel:nWidth)
#include "protheus.ch" User Function Layer() Local oDlg as object Local oLayer as object oLayer := FWLayer():new() DEFINE MSDIALOG oDlg FROM 000,000 TO 500,500 PIXEL TITLE "FWLayer" //Inicializa o FWLayer com a janela que ele pertencera e se sera exibido o botão de fechar oLayer:init(oDlg,.T.) //Cria as colunas do Layer oLayer:addCollumn('Col01',60,.F.) oLayer:addCollumn('Col02',40,.F.) //Adiciona Janelas as colunas oLayer:addWindow('Col01','C1_Win01','Janela 01',60,.T.,.F.,{|| Alert("Clique janela 01!") },,{|| Alert("Janela 01 recebeu foco!") }) oLayer:addWindow('Col01','C1_Win02','Janela 02',40,.T.,.T.,{|| Alert("Clique janela 02!") },,{|| Alert("Janela 02 recebeu foco!") }) oLayer:addWindow('Col02','C2_Win01','Janela 01',60,.T.,.F.,{|| Alert("Clique janela 01 Coluna 2!") },,{|| Alert("Janela 01 recebeu foco Coluna 2!") }) oLayer:getWinPanel('Col02','C2_Win01') //Coloca o botão de split na coluna oLayer:setColSplit('Col01',CONTROL_ALIGN_RIGHT,,{|| Alert("Split Col01!") }) ACTIVATE MSDIALOG oDlg CENTERED Return