From 9a7d948df614633f20d5d581849f510e36622e58 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Mon, 18 Apr 2011 15:11:46 +0000 Subject: [PATCH] Inclusão de combo para escolha do tema na ferramenta cortina --- ferramentas/cortina/index.js.php | 129 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 98 insertions(+), 31 deletions(-) diff --git a/ferramentas/cortina/index.js.php b/ferramentas/cortina/index.js.php index c1bf2fe..4a4b86d 100644 --- a/ferramentas/cortina/index.js.php +++ b/ferramentas/cortina/index.js.php @@ -74,6 +74,7 @@ i3GEOF.cortina = { } catch(erro){alert(erro);} i3GEOF.cortina.criaslide(); + i3GEOF.cortina.comboTemas(); }, /* Function: html @@ -85,13 +86,14 @@ i3GEOF.cortina = { String com o código html */ html:function(){ + var ins = "
"; if(navm){ - var ins = '
' + + ins += '
' + '
' + '
'; } else{ - var ins = '
' + + ins += '
' + '
' + '
'; } @@ -105,51 +107,55 @@ i3GEOF.cortina = { Parametro: tema {string} - codigo do tema - */ + */ criaJanelaFlutuante: function(tema){ - if(arguments.length == 0) + if(arguments.length === 0) {tema = i3GEO.temaAtivo;} + else + {i3GEO.ativaTema(tema);} + minimiza = function(){ + i3GEO.janela.minimiza("i3GEOF.cortina"); + }; var janela,divid,temp,titulo; i3GEOF.cortina.tema = tema; //cria a janela flutuante - titulo = "Cortina "+tema+"    "; + titulo = "Cortina    "; janela = i3GEO.janela.cria( "230px", - "40px", + "60px", "", "", "", titulo, "i3GEOF.cortina", false, - "hd" + "hd", + "", + minimiza ); divid = janela[2].id; $i("i3GEOF.cortina_corpo").style.backgroundColor = "white"; $i("i3GEOF.cortina_corpo").style.textAlign = "left"; i3GEOF.cortina.aguarde = $i("i3GEOF.cortina_imagemCabecalho").style; - i3GEOF.cortina.inicia(divid); temp = function(){ + var layer,estilo; if(i3GEO.Interface.ATUAL === "openlayers"){ - try{ - var divlayer = i3geoOL.getLayersByName(i3GEO.temaAtivo); - var estilo = divlayer[0].div.style; - if(navm) - {estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";} - else - {estilo.clip = "";} - } - catch(e){} + layer = i3geoOL.getLayersByName(i3GEO.temaAtivo)[0]; + estilo = layer.div.style; } if(i3GEO.Interface.ATUAL === "googlemaps"){ - var estilo = (i3GEO.Interface.googlemaps.retornaDivLayer(i3GEO.temaAtivo)).style; - if(navm) - {estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";} - else - {estilo.clip = "";} + layer = i3GEO.Interface.googlemaps.retornaDivLayer(i3GEO.temaAtivo); + estilo = layer.style; } + estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)"; + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search("i3GEOF.cortina.comboTemas()") > 0) + {i3GEO.eventos.ATUALIZAARVORECAMADAS.remove("i3GEOF.cortina.comboTemas()");} + i3GEOF.cortina.slider = null; }; YAHOO.util.Event.addListener(janela[0].close, "click", temp); + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search("i3GEOF.cortina.comboTemas()") < 0) + {i3GEO.eventos.ATUALIZAARVORECAMADAS.push("i3GEOF.cortina.comboTemas()");} + i3GEOF.cortina.inicia(divid); }, /* Function: criaslide @@ -157,32 +163,93 @@ i3GEOF.cortina = { Cria a barra deslizante com base em YAHOO.widget.Slider */ criaslide: function(){ - var slider = YAHOO.widget.Slider.getHorizSlider($i("slider-bg"),$i("slider-thumb"), 0, 200, 0), - layer, - estilo; + i3GEOF.cortina.slider = YAHOO.widget.Slider.getHorizSlider($i("slider-bg"),$i("slider-thumb"), 0, 200, 0); + var layer; if(i3GEO.Interface.ATUAL === "openlayers"){ layer = i3geoOL.getLayersByName(i3GEOF.cortina.tema)[0]; - estilo = layer.div.style; + i3GEOF.cortina.estilo = layer.div.style; } if(i3GEO.Interface.ATUAL === "googlemaps"){ layer = i3GEO.Interface.googlemaps.retornaDivLayer(i3GEOF.cortina.tema); - estilo = layer.style; + i3GEOF.cortina.estilo = layer.style; } - estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)"; - slider.setValue(0,false); - slider.subscribe("change", function(offsetFromStart) { + i3GEOF.cortina.estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)"; + i3GEOF.cortina.slider.setValue(0,false); + i3GEOF.cortina.slider.subscribe("change", function(offsetFromStart) { var t=0, r=i3GEO.parametros.w, b=i3GEO.parametros.h, l=0, escala = r / 200; l = l + (offsetFromStart * escala); - estilo.clip = "rect("+t+"px,"+r+"px,"+b+"px,"+l+"px)"; + i3GEOF.cortina.estilo.clip = "rect("+t+"px,"+r+"px,"+b+"px,"+l+"px)"; }); if(navm){ $i("slider-bg").style.left = "-100px"; $i("i3GEOF.cortina_corpo").style.background = "url("+i3GEO.configura.locaplic+"/pacotes/yui270/build/slider/assets/bg-h.gif) white no-repeat 10px 0px"; } + }, + /* + Function: reiniciaSlide + + Zera a barra do slide + */ + reiniciaSlide: function(){ + var divlayer,layer; + i3GEOF.cortina.slider.setValue(0,false); + if(i3GEO.Interface.ATUAL === "openlayers"){ + layer = i3geoOL.getLayersByName(i3GEOF.cortina.tema)[0]; + i3GEOF.cortina.estilo = layer.div.style; + } + if(i3GEO.Interface.ATUAL === "googlemaps"){ + layer = i3GEO.Interface.googlemaps.retornaDivLayer(i3GEOF.cortina.tema); + i3GEOF.cortina.estilo = layer.style; + } + i3GEOF.cortina.slider.subscribe("change", function(offsetFromStart) { + var t=0, + r=i3GEO.parametros.w, + b=i3GEO.parametros.h, + l=0, + escala = r / 200; + l = l + (offsetFromStart * escala); + i3GEOF.cortina.estilo.clip = "rect("+t+"px,"+r+"px,"+b+"px,"+l+"px)"; + }); + }, + /* + Function: comboTemas + + Cria um combo com a lista de temas + + Veja: + + + */ + comboTemas: function(){ + i3GEO.util.comboTemas( + "i3GEOcortinatemas", + function(retorno){ + $i("i3GEOcortinaTemasDiv").innerHTML = retorno.dados; + $i("i3GEOcortinaTemasDiv").style.display = "block"; + if ($i("i3GEOcortinatemas")){ + $i("i3GEOcortinatemas").onchange = function(){ + i3GEOF.cortina.estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)"; + var t = $i("i3GEOcortinatemas").value; + i3GEO.mapa.ativaTema(t); + i3GEOF.cortina.tema = t; + i3GEOF.cortina.reiniciaSlide(); + }; + $i("i3GEOcortinatemas").style = "210px"; + } + if(i3GEO.temaAtivo !== ""){ + $i("i3GEOcortinatemas").value = i3GEO.temaAtivo; + $i("i3GEOcortinatemas").onchange.call(); + } + }, + "i3GEOcortinaTemasDiv", + "", + false, + "ligados" + ); } }; \ No newline at end of file -- libgit2 0.21.2