From 8cecc7bc8a8c442e8d5973d50f2e78c39cb24e61 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Mon, 1 Aug 2011 02:46:03 +0000 Subject: [PATCH] --- classesjs/classe_arvoredecamadas.js | 3 ++- classesjs/classe_configura.js | 4 +++- classesjs/classe_janela.js | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- classesjs/classe_util.js | 2 +- classesjs/dicionario.js | 8 ++++---- ferramentas/busca/index.js.php | 20 ++++++++++++++++++-- ferramentas/tabela/index.js.php | 64 +++++++++------------------------------------------------------- ferramentas/toponimia/index.js.php | 23 +++++++++++++++++++---- 8 files changed, 115 insertions(+), 69 deletions(-) diff --git a/classesjs/classe_arvoredecamadas.js b/classesjs/classe_arvoredecamadas.js index caf441e..1854efa 100644 --- a/classesjs/classe_arvoredecamadas.js +++ b/classesjs/classe_arvoredecamadas.js @@ -567,8 +567,9 @@ i3GEO.arvoreDeCamadas = { d = this.EXPANDIDA; if(grupoLayers[i].expandido && grupoLayers[i].expandido === true) {d = true;} - grupoNode = new YAHOO.widget.HTMLNode({enableHighlight:false,html:temp,expanded:d}, tempNode); n = grupoLayers[i].layers.length; + if(n > 0) + {grupoNode = new YAHOO.widget.HTMLNode({enableHighlight:false,html:temp,expanded:d}, tempNode);} //layers de um grupo for(j=0;j'+$trad("a7")+'',url: "#"}, - { id:"omenudataFerramentas2",text: $trad("t31"), url: "javascript:i3GEO.tema.dialogo.tabela()"} + { id:"omenudataFerramentas2",text: $trad("t31"), url: "javascript:i3GEO.tema.dialogo.tabela()"}, + { id:"omenudataFerramentas3",text: $trad("t23"), url: "javascript:i3GEO.tema.dialogo.procuraratrib()"}, + { id:"omenudataFerramentas4",text: $trad("t25"), url: "javascript:i3GEO.tema.dialogo.toponimia()"} ] } }, diff --git a/classesjs/classe_janela.js b/classesjs/classe_janela.js index 0eee5d8..e1f81dc 100644 --- a/classesjs/classe_janela.js +++ b/classesjs/classe_janela.js @@ -763,7 +763,65 @@ i3GEO.janela = { if(typeof(console) !== 'undefined'){console.error(e);} } } - } + }, + /* + Function: comboCabecalhoTemas + + Adiciona no cabeçalho da janela um combo com a lista de temas para janelas abertas por ferramentas + + Essa função é utilizada pelas ferramentas que operam sobre um determinado tema. O combo permite que o usuário + selecione um tema e ative a ferramenta para funcionar com esse tema + + Parametros: + + idDiv {string} - id do elemento HTML que receberá o combo + + idCombo {string} - id do combo que será criado + + ferramenta {string} - nome da ferramenta (namespace da classe, por exemplo "tabela" para a classe i3GEOF.tabela + + tipo {string} - tipo de combo + */ + comboCabecalhoTemas: function(idDiv,idCombo,ferramenta,tipo){ + var temp = $i(idDiv); + if(temp){ + temp.innerHTML = ""; + i3GEO.util.comboTemas( + temp.id+"Sel", + function(retorno){ + $i(idDiv).innerHTML = retorno.dados; + var c = $i(idCombo); + c.style.width = "150px"; + c.style.border = "solid #B4B4B4 1px"; + c.style.top = "1px"; + c.style.position = "relative"; + c.style.fontSize = "10px"; + c.style.color = "#B4B4B4"; + c.value = i3GEOF[ferramenta].tema; + if(c.value === ""){ + i3GEOF[ferramenta].tema = ""; + $i("i3GEOF."+ferramenta+"_corpo").innerHTML = ""; + } + c.onchange = function(){ + var valor = $i(idCombo).value; + if(valor !== ""){ + i3GEO.mapa.ativaTema(valor); + i3GEOF[ferramenta].tema = valor; + $i("i3GEOF."+ferramenta+"_corpo").innerHTML = ""; + eval("i3GEOF."+ferramenta+".inicia('i3GEOF."+ferramenta+"_corpo');"); + } + }; + }, + temp.id, + "", + false, + tipo + ); + } + temp = "i3GEO.janela.comboCabecalhoTemas('"+idDiv+"','"+idCombo+"','"+ferramenta+"')"; + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search(temp) < 0) + {i3GEO.eventos.ATUALIZAARVORECAMADAS.push(temp);} + } }; try{ //controle dos painéis que podem ser redimensionados diff --git a/classesjs/classe_util.js b/classesjs/classe_util.js index 723092d..693820e 100644 --- a/classesjs/classe_util.js +++ b/classesjs/classe_util.js @@ -1541,7 +1541,7 @@ i3GEO.util = { } if(tipoCombo === "ligadosComTabela"){ if(i3GEO.arvoreDeCamadas.CAMADAS !== ""){ - temp(i3GEO.arvoreDeCamadas.filtraCamadas("status",2,"igual",i3GEO.arvoreDeCamadas.CAMADAS)); + temp = i3GEO.arvoreDeCamadas.filtraCamadas("status",2,"igual",i3GEO.arvoreDeCamadas.CAMADAS); monta(i3GEO.arvoreDeCamadas.filtraCamadas("type",3,"menor",temp)); } else diff --git a/classesjs/dicionario.js b/classesjs/dicionario.js index 1ceec5f..c639b01 100644 --- a/classesjs/dicionario.js +++ b/classesjs/dicionario.js @@ -1369,10 +1369,10 @@ it:"Inserisci il testo sulla mappa cliccando su un punto. Utilizzare questa opzi }], "d25t":[ { -pt:"inserir texto", -en:"inserir texto", -es:"inserir texto", -it:"inserir texto" +pt:"Inserir texto", +en:"Inserir texto", +es:"Inserir texto", +it:"Inserir texto" }], "d26":[ { diff --git a/ferramentas/busca/index.js.php b/ferramentas/busca/index.js.php index 4872682..e249123 100644 --- a/ferramentas/busca/index.js.php +++ b/ferramentas/busca/index.js.php @@ -68,6 +68,11 @@ i3GEOF.busca = { iddiv {String} - id do div que receberá o conteudo HTML da ferramenta */ inicia: function(iddiv){ + i3GEO.janela.comboCabecalhoTemas("i3GEOFbuscaComboCabeca","i3GEOFbuscaComboCabecaSel","busca","ligadosComTabela"); + if(i3GEO.temaAtivo === ""){ + $i(iddiv).innerHTML = "Escolha um tema na lista mostrada no cabeçalho"; + return; + } try{ $i(iddiv).innerHTML += i3GEOF.busca.html(); i3GEO.php.listaItensTema(i3GEOF.busca.montaListaItens,i3GEOF.busca.tema); @@ -75,6 +80,7 @@ i3GEOF.busca = { "i3GEObuscabotao1", {onclick:{fn: i3GEOF.busca.procurar}} ); + i3GEO.janela.comboCabecalhoTemas("i3GEOFbuscaComboCabeca","i3GEOFbuscaComboCabecaSel","busca","ligadosComTabela"); } catch(erro){alert(erro);} }, @@ -122,6 +128,11 @@ i3GEOF.busca = { */ criaJanelaFlutuante: function(){ var minimiza,cabecalho,janela,divid,temp,titulo; + if($i("i3GEOF.busca")){ + i3GEOF.busca.tema = i3GEO.temaAtivo; + i3GEOF.busca.inicia("i3GEOF.busca_corpo"); + return; + } //funcao que sera executada ao ser clicado no cabeçalho da janela cabecalho = function(){ i3GEOF.busca.ativaFoco(); @@ -130,7 +141,7 @@ i3GEOF.busca = { i3GEO.janela.minimiza("i3GEOF.busca"); }; //cria a janela flutuante - titulo = "Procurar    "; + titulo = "
------
 Buscar    "; janela = i3GEO.janela.cria( "290px", "330px", @@ -148,6 +159,11 @@ i3GEOF.busca = { i3GEOF.busca.aguarde = $i("i3GEOF.busca_imagemCabecalho").style; //i3GEOF.analisaGeometrias.aguarde.visibility = "visible"; i3GEOF.busca.inicia(divid); + temp = function(){ + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search('i3GEO.janela.comboCabecalhoTemas("i3GEOFbuscaComboCabeca","i3GEOFbuscaComboCabecaSel","busca","ligadosComTabela")') > 0) + {i3GEO.eventos.ATUALIZAARVORECAMADAS.remove('i3GEO.janela.comboCabecalhoTemas("i3GEOFbuscaComboCabeca","i3GEOFbuscaComboCabecaSel","busca","ligadosComTabela")');} + }; + YAHOO.util.Event.addListener(janela[0].close, "click", temp); }, /* Function: ativaFoco @@ -155,7 +171,7 @@ i3GEOF.busca = { Refaz a interface da ferramenta quando a janela flutuante tem seu foco ativado */ ativaFoco: function(){ - if(i3GEO.arvoreDeCamadas.pegaTema(i3GEOF.busca.tema) === "") + if(i3GEOF.busca.tema !== "" && i3GEO.arvoreDeCamadas.pegaTema(i3GEOF.busca.tema) === "") {alert("O tema ja nao existe mais no mapa");} var i = $i("i3GEOF.busca_c").style; i3GEO.janela.ULTIMOZINDEX++; diff --git a/ferramentas/tabela/index.js.php b/ferramentas/tabela/index.js.php index 4da1f48..f6e0116 100644 --- a/ferramentas/tabela/index.js.php +++ b/ferramentas/tabela/index.js.php @@ -103,13 +103,13 @@ i3GEOF.tabela = { iddiv {String} - id do div que receberá o conteudo HTML da ferramenta */ inicia: function(iddiv){ + i3GEO.janela.comboCabecalhoTemas("i3GEOFtabelaComboCabeca","i3GEOFtabelaComboCabecaSel","tabela","ligadosComTabela"); if(i3GEO.temaAtivo === ""){ - i3GEOF.tabela.comboCabecalho(); $i(iddiv).innerHTML = "Escolha um tema na lista mostrada no cabeçalho"; return; } try{ - $i(iddiv).innerHTML += i3GEOF.tabela.html(); + $i(iddiv).innerHTML = i3GEOF.tabela.html(); i3GEO.guias.mostraGuiaFerramenta("i3GEOtabelaguia1","i3GEOtabelaguia"); //eventos das guias $i("i3GEOtabelaguia6").onclick = function() @@ -199,7 +199,6 @@ i3GEOF.tabela = { if (i3GEO.parametros.r.toLowerCase() !== "sim") {$i("i3GEOtabelaguia4obj").innerHTML = "Opção não disponível";} i3GEOF.tabela.pegaRegistros(); - i3GEOF.tabela.comboCabecalho(); } catch(erro){alert(erro);} }, @@ -311,6 +310,11 @@ i3GEOF.tabela = { */ criaJanelaFlutuante: function(){ var minimiza,cabecalho,janela,divid,temp,titulo; + if($i("i3GEOF.tabela")){ + i3GEOF.tabela.tema = i3GEO.temaAtivo; + i3GEOF.tabela.inicia("i3GEOF.tabela_corpo"); + return; + } cabecalho = function(){ i3GEOF.tabela.ativaFoco(); }; @@ -347,8 +351,8 @@ i3GEOF.tabela = { if(i3GEO.Interface.ATUAL === "googleearth"){ google.earth.removeEventListener(tabelaDragend); } - if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search("i3GEOF.tabela.comboCabecalho()") > 0) - {i3GEO.eventos.ATUALIZAARVORECAMADAS.remove("i3GEOF.tabela.comboCabecalho()");} + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search('i3GEO.janela.comboCabecalhoTemas("i3GEOFtabelaComboCabeca","i3GEOFtabelaComboCabecaSel","tabela","ligadosComTabela")') > 0) + {i3GEO.eventos.ATUALIZAARVORECAMADAS.remove('i3GEO.janela.comboCabecalhoTemas("i3GEOFtabelaComboCabeca","i3GEOFtabelaComboCabecaSel","tabela","ligadosComTabela")');} }; YAHOO.util.Event.addListener(janela[0].close, "click", temp); }, @@ -365,56 +369,6 @@ i3GEOF.tabela = { i.zIndex = 21000 + i3GEO.janela.ULTIMOZINDEX; }, /* - Function: comboCabecalho - - Cria o combo de seleção de temas localizado no cabeçalho da janela - */ - comboCabecalho: function(){ - var idDiv = "i3GEOFtabelaComboCabeca", - idCombo = "i3GEOFtabelaComboCabecaSel", - ferramenta = "tabela", - temp = $i(idDiv); - if(temp){ - temp.innerHTML = ""; - i3GEO.util.comboTemas( - temp.id+"Sel", - function(retorno){ - $i(idDiv).innerHTML = retorno.dados; - var c = $i(idCombo); - c.style.width = "150px"; - c.style.border = "solid #B4B4B4 1px"; - c.style.top = "1px"; - c.style.position = "relative"; - c.style.fontSize = "10px"; - c.style.color = "#B4B4B4"; - c.value = i3GEOF.tabela.tema; - if(c.value === ""){ - i3GEOF.tabela.tema = ""; - $i("i3GEOF."+ferramenta+"_corpo").innerHTML = ""; - } - c.onchange = function(){ - var valor = $i(idCombo).value; - if(valor !== ""){ - - i3GEO.mapa.ativaTema(valor); - i3GEOF.tabela.tema = valor; - - $i("i3GEOF."+ferramenta+"_corpo").innerHTML = ""; - eval("i3GEOF."+ferramenta+".inicia('i3GEOF."+ferramenta+"_corpo');"); - - } - }; - }, - temp.id, - "", - false, - "ligados" - ); - } - if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search("i3GEOF.tabela.comboCabecalho()") < 0) - {i3GEO.eventos.ATUALIZAARVORECAMADAS.push("i3GEOF.tabela.comboCabecalho()");} - }, - /* Function: ativaAutoAtualiza Ativa ou desativa a atualização automática da tabela quando o usuário navega no mapa diff --git a/ferramentas/toponimia/index.js.php b/ferramentas/toponimia/index.js.php index 633a839..a975eae 100644 --- a/ferramentas/toponimia/index.js.php +++ b/ferramentas/toponimia/index.js.php @@ -19,7 +19,7 @@ Licenca: GPL2 -I3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br @@ -62,6 +62,11 @@ i3GEOF.toponimia = { iddiv {String} - id do div que receberá o conteudo HTML da ferramenta */ inicia: function(iddiv){ + i3GEO.janela.comboCabecalhoTemas("i3GEOFtoponimiaComboCabeca","i3GEOFtoponimiaComboCabecaSel","toponimia","ligadosComTabela"); + if(i3GEO.temaAtivo === ""){ + $i(iddiv).innerHTML = "Escolha um tema na lista mostrada no cabeçalho"; + return; + } try{ $i(iddiv).innerHTML += i3GEOF.toponimia.html(); i3GEO.guias.mostraGuiaFerramenta("i3GEOtoponimiaguia1","i3GEOtoponimiaguia"); @@ -234,11 +239,16 @@ i3GEOF.toponimia = { */ criaJanelaFlutuante: function(){ var minimiza,cabecalho,janela,divid,temp,titulo; + if($i("i3GEOF.toponimia")){ + i3GEOF.toponimia.tema = i3GEO.temaAtivo; + i3GEOF.toponimia.inicia("i3GEOF.toponimia_corpo"); + return; + } //cria a janela flutuante - titulo = "Toponímia    "; + titulo = "
------
   Toponímia    "; janela = i3GEO.janela.cria( - "350px", - "250px", + "390px", + "180px", "", "", "", @@ -251,6 +261,11 @@ i3GEOF.toponimia = { i3GEOF.toponimia.aguarde = $i("i3GEOF.toponimia_imagemCabecalho").style; $i("i3GEOF.toponimia_corpo").style.backgroundColor = "white"; i3GEOF.toponimia.inicia(divid); + temp = function(){ + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search('i3GEO.janela.comboCabecalhoTemas("i3GEOFtoponimiaComboCabeca","i3GEOFtoponimiaComboCabecaSel","toponimia","ligadosComTabela")') > 0) + {i3GEO.eventos.ATUALIZAARVORECAMADAS.remove('i3GEO.janela.comboCabecalhoTemas("i3GEOFtoponimiaComboCabeca","i3GEOFtoponimiaComboCabecaSel","toponimia","ligadosComTabela")');} + }; + YAHOO.util.Event.addListener(janela[0].close, "click", temp); }, /* Function: corj -- libgit2 0.21.2