Barra de botões

Arquivo

i3geo/classesjs/classe_barradebotoes.js

Licenca

GPL2

i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet

Direitos Autorais Reservados © 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar..nosp@m.moretti@gmai.nosp@m.l.com

Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença Pública Geral GNU conforme publicada pela Free Software Foundation;

Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU ADEQUA�ÃO A UMA FINALIDADE ESPECÍFICA.  Consulte a Licença Pública Geral do GNU para mais detalhes.  Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com este programa; se não, escreva para a Free Software Foundation, Inc., no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.

Summary
Barra de botõesi3geo/classesjs/classe_barradebotoes.js
i3GEO. barraDeBotoesConstrói a barra de botões flutuante
Propriedades
ATIVAIndica se a barra de botões será ou não cosntruída automaticamente no processo de inicialização do mapa.
TIPOTipo de barra.
OFFSETAjuste do deslocamento vertical da barra (válido apenas para o tipo “olhodepeixe”)
MAXBOTOESNúmero de botões iniciais (válido apenas para o tipo “olhodepeixe”)
AJUDAMostra um texto de ajuda colado ao ícone da ferramenta
ORIENTACAOOrientação vertical ou horizontal da barra (não se aplica ao tipo “olhodepeixe”
HORIZONTALWLargura da barra quando ORIENTACAO = “horizontal”
TIPOAJUDATipo do balão de ajuda que é mostrado colado ao ícone da ferramenta
SOICONESEsconde as bordas das barras e o fundo, mostrando apenas os ícones
AUTOALTURAAjusta automaticamente a altura das barras conforme a altura do mapa.
TRANSICAOSUAVEAltera a transparência das barras quando o mouse sobrepõe a barra e quando sai da barra
OPACIDADEValor da opacidade miníma utilizada quando TRANSICAOSUAVE for igual a true.
PERMITEFECHARMostra o botão para fechar as barras ou não.
PERMITEDESLOCARPermite deslocar as barras ou não.
ATIVAMENUCONTEXTOIndica se o menu de contexto deve ser ativado
AUTOCria as barras de botões automaticamente, utilizando os botões padrão sem considerar a lista de botões definidas no HTML da interface.
LISTABOTOESObjeto com a lista de botões e suas propriedades, como por exemplo, a função a ser executada ao se clicar no botão.
INCLUIBOTAOObjeto que indica quais os botões que serão inseridos na barra de botões 2.
ICONEBOTAOÍcones utilizados em cada um dos botões da barra.
TEMPLATEBOTAOTemplate HTML que será utilizado na construção automática dos botões da barra 2.
BOTAOPADRAOBotão que será ativado ao inicializar os botões com ativaBotoes.
COMPORTAMENTODefine o comportamento dos botões quando é pressionado
Variaveis
BARRASArray com os objetos YAHOO.i3GEO.janela.botoes criados
BOTAOCLICADOÚltimo icone que foi clicado
Functions
ativaPadraoAtiva o botão definido como padrão, executando a função definida em onclick
ativaIconeAltera as bordas de um ícone aplicando um efeito de ícone realçado.
ativaBotoesAtiva os botoes definidos em LISTABOTOES
execBotaoCom base no código de um botão (iddiv), obtém a função armazenada em i3GEO.barraDeBotoes.LISTABOTOES e executa.
defBotaoObtém as definições de um botão conforme o seu código (iddiv)
inicializaBarraOPInicializa a barra de botões quando for do tipo “olhodepeixe”
inicializaBarraInicializa a barra de botões
ativaMenuContexto (depreciado na versão 4.5)Ativa o menu de contexto acionado com o botão direito do mouse
reativaReativa as barras de ferramentas já criadas
recriaRecria uma barra de ferramentas já aberta aplicando os par�metros de configuração definidos (variáveis)
fechaFecha uma barra de ferramentas

i3GEO. barraDeBotoes

Constrói a barra de botões flutuante

Veja também classe_interface.js (i3GEO.Interface) que possuí par�metros que permitem ajustar a posição das barras no mapa

Summary
Propriedades
ATIVAIndica se a barra de botões será ou não cosntruída automaticamente no processo de inicialização do mapa.
TIPOTipo de barra.
OFFSETAjuste do deslocamento vertical da barra (válido apenas para o tipo “olhodepeixe”)
MAXBOTOESNúmero de botões iniciais (válido apenas para o tipo “olhodepeixe”)
AJUDAMostra um texto de ajuda colado ao ícone da ferramenta
ORIENTACAOOrientação vertical ou horizontal da barra (não se aplica ao tipo “olhodepeixe”
HORIZONTALWLargura da barra quando ORIENTACAO = “horizontal”
TIPOAJUDATipo do balão de ajuda que é mostrado colado ao ícone da ferramenta
SOICONESEsconde as bordas das barras e o fundo, mostrando apenas os ícones
AUTOALTURAAjusta automaticamente a altura das barras conforme a altura do mapa.
TRANSICAOSUAVEAltera a transparência das barras quando o mouse sobrepõe a barra e quando sai da barra
OPACIDADEValor da opacidade miníma utilizada quando TRANSICAOSUAVE for igual a true.
PERMITEFECHARMostra o botão para fechar as barras ou não.
PERMITEDESLOCARPermite deslocar as barras ou não.
ATIVAMENUCONTEXTOIndica se o menu de contexto deve ser ativado
AUTOCria as barras de botões automaticamente, utilizando os botões padrão sem considerar a lista de botões definidas no HTML da interface.
LISTABOTOESObjeto com a lista de botões e suas propriedades, como por exemplo, a função a ser executada ao se clicar no botão.
INCLUIBOTAOObjeto que indica quais os botões que serão inseridos na barra de botões 2.
ICONEBOTAOÍcones utilizados em cada um dos botões da barra.
TEMPLATEBOTAOTemplate HTML que será utilizado na construção automática dos botões da barra 2.
BOTAOPADRAOBotão que será ativado ao inicializar os botões com ativaBotoes.
COMPORTAMENTODefine o comportamento dos botões quando é pressionado
Variaveis
BARRASArray com os objetos YAHOO.i3GEO.janela.botoes criados
BOTAOCLICADOÚltimo icone que foi clicado
Functions
ativaPadraoAtiva o botão definido como padrão, executando a função definida em onclick
ativaIconeAltera as bordas de um ícone aplicando um efeito de ícone realçado.
ativaBotoesAtiva os botoes definidos em LISTABOTOES
execBotaoCom base no código de um botão (iddiv), obtém a função armazenada em i3GEO.barraDeBotoes.LISTABOTOES e executa.
defBotaoObtém as definições de um botão conforme o seu código (iddiv)
inicializaBarraOPInicializa a barra de botões quando for do tipo “olhodepeixe”
inicializaBarraInicializa a barra de botões
ativaMenuContexto (depreciado na versão 4.5)Ativa o menu de contexto acionado com o botão direito do mouse
reativaReativa as barras de ferramentas já criadas
recriaRecria uma barra de ferramentas já aberta aplicando os par�metros de configuração definidos (variáveis)
fechaFecha uma barra de ferramentas

Propriedades

ATIVA

Indica se a barra de botões será ou não cosntruída automaticamente no processo de inicialização do mapa.

Tipo

{boolean}

Default

{true}

TIPO

Tipo de barra.

Por padrão, utiliza a biblioteca YUI para construir a barra, opcionalmente pode-se utilizar o tipo “olho de peixe”.

Tipo

{string}

Default

{yui}

Valores

{“yui”,”olhodepeixe”}

OFFSET

Ajuste do deslocamento vertical da barra (válido apenas para o tipo “olhodepeixe”)

Desloca a barra em uma determinada quantidade de pixels.  Valores negativos fazem a barra subir.

Tipo

{numeric}

Default

{-205}

MAXBOTOES

Número de botões iniciais (válido apenas para o tipo “olhodepeixe”)

Se for 0, todos os botões serão mostrados

Tipo

{numeric}

Default

{10}

AJUDA

Mostra um texto de ajuda colado ao ícone da ferramenta

Tipo

{boolean}

Default

{true}

ORIENTACAO

Orientação vertical ou horizontal da barra (não se aplica ao tipo “olhodepeixe”

Tipo

{string}

Valores

{“horizontal”,”vertical”}

Default

{“vertical”}

HORIZONTALW

Largura da barra quando ORIENTACAO = “horizontal”

Tipo

{numeric}

Default

{350}

TIPOAJUDA

Tipo do balão de ajuda que é mostrado colado ao ícone da ferramenta

Tipo

{string}

Valores

{“horizontal”,”vertical”,”balao”}

Default

{“horizontal”}

SOICONES

Esconde as bordas das barras e o fundo, mostrando apenas os ícones

Default

{false}

Tipo

{boolean}

AUTOALTURA

Ajusta automaticamente a altura das barras conforme a altura do mapa.

Esta opção não tem efeito se a barra contiver a barra de zoom (isso ocorre em função de um bug do YIU, que causa erro na barra nessas condições)

Tipo

{boolean}

TRANSICAOSUAVE

Altera a transparência das barras quando o mouse sobrepõe a barra e quando sai da barra

Tipo

{boolean}

Default

{true}

OPACIDADE

Valor da opacidade miníma utilizada quando TRANSICAOSUAVE for igual a true.

Varia de 0 a 100

Tipo

{numeric}

Default

{65}

PERMITEFECHAR

Mostra o botão para fechar as barras ou não.

Tipo

{boolean}

PERMITEDESLOCAR

Permite deslocar as barras ou não.

Tipo

{boolean}

ATIVAMENUCONTEXTO

Indica se o menu de contexto deve ser ativado

Tipo

{Boolean}

Default

{true}

AUTO

Cria as barras de botões automaticamente, utilizando os botões padrão sem considerar a lista de botões definidas no HTML da interface.

A lista de botões é definida em i3GEO.configura

Tipo

{Boolean}

Default

{false}

LISTABOTOES

Objeto com a lista de botões e suas propriedades, como por exemplo, a função a ser executada ao se clicar no botão.

Essa lista não indica quais os botões que serão inseridos.  Para definir os botões que serão inseridos, inclua no HTML da interface os botões desejados (veja em i3geo/exemplos).  Se vc utilizar a opção i3GEO.barraDeBotoes.AUTO = true , os botões serão inseridos automaticamente.  Nesse caso, utilize a opção i3GEO.barraDeBotoes.INCLUIRBOTOES para indicar os botões desejados.

Por default utiliza os botoes definidos em i3GEO.configura.funcoesBotoes.botoes

Tipo

{JSON}

INCLUIBOTAO

Objeto que indica quais os botões que serão inseridos na barra de botões 2.

Essa opção só funciona se i3GEO.barraDeBotoes.AUTO = true

Vc pode também alterar a ordem dos botoes ou adicionar novos

Na barra de botões do tipo “yui”, as chaves serão adicionadas como o atributo “id” em cada botão.  Nesse caso, é possível definir o estilo CSS para cada botão (veja em i3geo/css/botoes2.css).

A ativação de cada botão, ou seja, a função que é executada ao ser feito o clique, é definida em i3GEO.configura.funcoesBotoes

Default

INCLUIBOTAO: {

abreJanelaLegenda: false,

zoomli: false,

zoomiauto: false,

zoomoauto: false

pan: false,

zoomtot:false,

identifica: true,

identificaBalao: true,

mede: true,

area: true,

imprimir: true,

reinicia: true,

exten: true,

referencia: true,

inserexy: true,

textofid: true,

selecao: true,

barraedicao: false,

google: true,

buscafotos: true,

wiki: true,

metar: true,

lentei: true,

confluence: true,

inseregrafico: true,

v3d: true,

localizar: true }

Tipo

{obj}

ICONEBOTAO

Ícones utilizados em cada um dos botões da barra.

Esses ícones são utilizados apenas se i3GEO.barraDeBotoes.TIPO = “olhodepeixe”.  Para cada elemento existente em i3GEO.barraDeBotoes.INCLUIBOTAO deve existir um elemento nesse objeto.  A chave de cada elemento é a mesma do objeto INCLUIBOTAO.  O endereço da imagem será complementado pelo i3geo, adicionando no início da string o valor da variável i3GEO.configura.locaplic

Default

ICONEBOTAO: {

zoomli: “/imagens/gisicons/eudock/zoom-region.png”,

pan: “/imagens/gisicons/eudock/pan.png”,

zoomtot: “/imagens/gisicons/eudock/zoom-extent.png”,

identifica: “/imagens/gisicons/eudock/identify.png”,

identificaBalao: “/imagens/gisicons/eudock/tips.png”,

mede: “/imagens/gisicons/eudock/length-measure.png”,

area: “/imagens/gisicons/eudock/area-measure.png”,

imprimir: “/imagens/gisicons/eudock/print.png”,

reinicia: “/imagens/gisicons/eudock/redraw.png”,

exten: “/imagens/gisicons/eudock/map-extent-info.png”,

referencia: “/imagens/gisicons/eudock/map-reference.png”,

inserexy: “/imagens/gisicons/eudock/point-create.png”,

textofid: “/imagens/gisicons/eudock/text-add.png”,

selecao: “/imagens/gisicons/eudock/select.png”,

google: “/imagens/gisicons/eudock/google-map.png”,

buscafotos: “/imagens/gisicons/eudock/fotos.png”,

wiki: “/imagens/gisicons/eudock/wiki.png”,

metar: “/imagens/gisicons/eudock/metar.png”,

lentei: “/imagens/gisicons/eudock/lente.png”,

confluence: “/imagens/gisicons/eudock/confluence.png”,

inseregrafico: “/imagens/gisicons/eudock/grafico.png”,

v3d: “/imagens/gisicons/eudock/v3d.png”,

barraedicao: “/imagens/gisicons/eudock/editopen.png”,

localizar: “/imagens/gisicons/eudock/search.png”,

abreJanelaLegenda: “/imagens/gisicons/eudock/legenda.png” }

Type

{obj}

TEMPLATEBOTAO

Template HTML que será utilizado na construção automática dos botões da barra 2.

Utilize a string $$ para indicar onde será incluído o código do botão.

Default

”<div style=’display:inline;background-color:rgb(250,250,250);’><p style=’font-size:2px;’>&nbsp;</p><img src=’”+i3GEO.configura.locaplic+”/imagens/branco.gif’ id=’$$’/></div>”

Tipo

{string}

BOTAOPADRAO

Bot&atilde;o que ser&aacute; ativado ao inicializar os bot&otilde;es com ativaBotoes.

Correpsonde ao item iddiv de LISTABOTOES

Tipo

{String}

COMPORTAMENTO

Define o comportamento dos bot&otilde;es quando &eacute; pressionado

Tipo

{String}

Valores

”padrao”comportamento padr&atilde;o, com bordas da esquerda e inferiores ativadas
”destacado”destaca apenas o bot&atilde;o atualmente pressionado
”vermelho”destaca com fundo vermelho
”laranja”destaca com fundo laranja
”cinza”destaca com fundo cinza

Variaveis

BARRAS

Array com os objetos YAHOO.i3GEO.janela.botoes criados

BOTAOCLICADO

&Uacute;ltimo icone que foi clicado

Tipo

{String}

Functions

ativaPadrao

ativaPadrao: function()

Ativa o bot&atilde;o definido como padr&atilde;o, executando a fun&ccedil;&atilde;o definida em onclick

Utilizado para restaurar o status padr&atilde;o da barra, principalmente por ferramentas que alteram &iacute;cones e outras propriedades do mapa

ativaIcone

ativaIcone: function(icone)

Altera as bordas de um &iacute;cone aplicando um efeito de &iacute;cone real&ccedil;ado.

Todos os demais &iacute;cones definidos em LISTABOTOES e que tiverem o tipo = “dinamico” ser&atilde;o processados para alterar as bordas dando o efeito de n&atilde;o ativo.

Parametro

icone {String}id do icone que ser&aacute; ativado.  Esse id &eacute; o mesmo definido em LISTABOTOES

ativaBotoes

ativaBotoes:function(padrao)

Ativa os botoes definidos em LISTABOTOES

Os botoes s&atilde;o constru&iacute;dos e as fun&ccedil;&otilde;es definidas s&atilde;o embutidas no evento onclick

Parametro

padrao (String}botao que ser&aacute; mostrado como ativo (opcional).  Se n&atilde;o for definido, ser&aacute; utilizado o bot&atilde;o especificado em BOTAOPADRAO.  O nome do botao deve estar em LISTABOTOES na propriedade iddiv

execBotao

execBotao: function(id,
x,
y,
posX,
posY)

Com base no c&oacute;digo de um bot&atilde;o (iddiv), obt&eacute;m a fun&ccedil;&atilde;o armazenada em i3GEO.barraDeBotoes.LISTABOTOES e executa.

Parametros

id {string}identificador do bot&atilde;o, conforme definido no elemento iddiv de i3GEO.barraDeBotoes.LISTABOTOES
x {numeric}(opcional) posi&ccedil;&atilde;o em pixels da tela onde foi feito o clique do mouse
y {numeric}(opcional) posi&ccedil;&atilde;o em pixels da tela onde foi feito o clique do mouse

defBotao

defBotao: function(iddiv)

Obt&eacute;m as defini&ccedil;&otilde;es de um bot&atilde;o conforme o seu c&oacute;digo (iddiv)

Retorno

{objeto}ver i3GEO.barraDeBotoes.LISTABOTOES

inicializaBarraOP

inicializaBarraOP: function()

Inicializa a barra de bot&otilde;es quando for do tipo “olhodepeixe”

O objeto euEnv armazena todas as caracter&iacute;sticas da barra

inicializaBarra

inicializaBarra:function(idconteudo,
idconteudonovo,
barraZoom,
x,
y,
onde)

Inicializa a barra de bot&otilde;es

A barra de zoom &eacute; inserida automaticamente na barra de botoes 1 se esta existir

Caso i3GEO.barraDeBotoes.TIPO === “olhodepeixe” os par�metros s&atilde;o ignorados.

Exemplo

if ($i(“barraDeBotoes1”))

i3GEO.barraDeBotoes.inicializaBarra(“barraDeBotoes1”,”i3geo_barra1”,true,x1,y1);

if ($i(“barraDeBotoes2”))

i3GEO.barraDeBotoes.inicializaBarra(“barraDeBotoes2”,”i3geo_barra2”,false,x2,y2);

Os objetos criados s&atilde;o armazenados no array BARRAS, dessa forma, para acessar uma barra utilize por exemplo:

i3GEO.barraDeBotoes.BARRAS[1].show();

Parametros

idconteudo {String}id do elemento existente no HTML e que cont&eacute;m as defini&ccedil;&otilde;es dos bot&otilde;es
idconteudonovo {String}id do elemento que ser&aacute; criado para adicionar os boto&otilde;es
barraZoom {boolean}indica se a barra de zoom ser&aacute; inclu&iacute;da
x {Numeric}posi&ccedil;&atilde;o x (pixels) da barra em rela&ccedil;&atilde;o ao mapa
y {Numeric}posi&ccedil;&atilde;o y (pixels) da barra em rela&ccedil;&atilde;o ao mapa
onde {String}(opcional) id do elemento HTML onde os bot&otilde;es ser&atilde;o inseridos

ativaMenuContexto (depreciado na vers&atilde;o 4.5)

ativaMenuContexto: function(idbarra)

Ativa o menu de contexto acionado com o bot&atilde;o direito do mouse

Parametro

idbarra{string} id da barra de bot&otilde;es onde o evento ser&aacute; ativado

reativa

reativa: function(indice)

Reativa as barras de ferramentas j&aacute; criadas

Essa op&ccedil;&atilde;o apenas aplica o m&eacute;todo “show” aos objetos armazenados em i3GEO.barraDeBotoes.BARRAS

Se a barra n&atilde;o existir previamente, nada ir&aacute; contecer

Parametro

indice {Integer}&iacute;ndice do array BARRAS que guarda os objetos YAHOO com as barras Se n&atilde;o for definido, todas as barras ser&atilde;o reativadas

recria

recria: function(id)

Recria uma barra de ferramentas j&aacute; aberta aplicando os par�metros de configura&ccedil;&atilde;o definidos (vari&aacute;veis)

Parametro

id {String}id da barra

fecha

fecha: function(id)

Fecha uma barra de ferramentas

Parametro

id {String}id que identifica a barra.  Corresponde ao par�metro idconteudonovo da fun&ccedil;&atilde;o de inicializa&ccedil;&atilde;o das barras
ativaPadrao: function()
Ativa o bot&atilde;o definido como padr&atilde;o, executando a fun&ccedil;&atilde;o definida em onclick
ativaIcone: function(icone)
Altera as bordas de um &iacute;cone aplicando um efeito de &iacute;cone real&ccedil;ado.
ativaBotoes:function(padrao)
Ativa os botoes definidos em LISTABOTOES
execBotao: function(id,
x,
y,
posX,
posY)
Com base no c&oacute;digo de um bot&atilde;o (iddiv), obt&eacute;m a fun&ccedil;&atilde;o armazenada em i3GEO.barraDeBotoes.LISTABOTOES e executa.
defBotao: function(iddiv)
Obt&eacute;m as defini&ccedil;&otilde;es de um bot&atilde;o conforme o seu c&oacute;digo (iddiv)
inicializaBarraOP: function()
Inicializa a barra de bot&otilde;es quando for do tipo “olhodepeixe”
inicializaBarra:function(idconteudo,
idconteudonovo,
barraZoom,
x,
y,
onde)
Inicializa a barra de bot&otilde;es
ativaMenuContexto: function(idbarra)
Ativa o menu de contexto acionado com o bot&atilde;o direito do mouse
reativa: function(indice)
Reativa as barras de ferramentas j&aacute; criadas
recria: function(id)
Recria uma barra de ferramentas j&aacute; aberta aplicando os par�metros de configura&ccedil;&atilde;o definidos (vari&aacute;veis)
fecha: function(id)
Fecha uma barra de ferramentas