Ir para o conteúdo

 Voltar a Geral - usuá...
Tela cheia

Customização YAHOO.widget.Panel

27 de Agosto de 2014, 15:58 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 29 vezes

Prezados,

 Estou trabalhando na customização de legenda do i3geo. Alguém com alguma dica de como customizar o YAHOO.widget.Panel? Principalmente no que se refere ao YAHOO.moveLegi.xp.panel.configClose?

Quero aplicar um novo layout na legenda, e uma delas inclui um botão close diferenciado.

 

Segue trecho de código:

YAHOO.namespace("moveLegi.xp");
                    YAHOO.moveLegi.xp.panel = new YAHOO.widget.Panel("moveLegi",
                                                {
                                                    width:"252px",
                                                    fixedcenter: false,
                                                    x: "100px",
                                                    y: "150px",
                                                    constraintoviewport: false,
                                                    underlay:"shadow",
                                                    close:true,
                                                    visible:true,
                                                    draggable:true,
                                                    modal:false,
                                                    iframe:true
                                                } );
                    //YAHOO.moveLegi.xp.panel.configClose();
                    YAHOO.moveLegi.xp.panel.render();


Obrigado desde já.

Autor: Tarcísio Araújo


33 comentários

  • 05a5236695a51749a413471846df81a0?only path=false&size=50&d=404Tarcísio Araújo(usuário não autenticado)
    3 de Setembro de 2014, 10:28

     

    Pessoal,

     Consegui realizar customização da legenda pegando os elementos via javascript e setando novos atributos. Não sei se é a maneira ideal, mas segue o exemplo:

     

            // Libera a legenda criando uma janela flutuante sobre o mapa
            i3GEO.mapa.legendaHTML.libera2();
            // Ajusta a posição da janela
            moverLegendaTela();

     

           function moverLegendaTela(){
                var moveLegi_c = document.getElementById("moveLegi_c");
               
                if(moveLegi_c){
                    var moveLegi = document.getElementById("moveLegi");
                    var wlegenda = document.getElementById("wlegenda");               
                    var moveLegi_h = document.getElementById("moveLegi_h");
                    var buttonCloseLegenda = document.getElementsByClassName("container-close");
                    buttonCloseLegenda = buttonCloseLegenda[0];
                    var sombraLegenda = document.getElementsByClassName("underlay");               
                    sombraLegenda[0].style.visibility="hidden";
                   
                   
                    moveLegi_c.style.position = "relative";
                    moveLegi_c.style.width = "200px";
                    moveLegi_c.style.cssFloat = "right";
                    moveLegi_c.style.left = "-20px";
                    moveLegi_c.style.top = "-330px";
                    moveLegi_c.style.boxShadow = "1px 1px 8px rgba(0,0,0,0.3)";       
                   
                    moveLegi.style.width = "200px";
                    moveLegi.style.border = "0";
                                   
                    wlegenda.style.width = "181px";
                    wlegenda.style.height = "auto";
                    wlegenda.style.padding =" 0px 0px 5px 20px";
                                   
                    moveLegi_h.className = "";
                    moveLegi_h.style.fontSize  = "15px";
                    moveLegi_h.style.fontWeight  = "bold";
                    moveLegi_h.style.lineHeight  = "34px";
                    moveLegi_h.style.margin  = "0px";
                    moveLegi_h.style.padding  = " 0px 0px 0px 15px";
                    moveLegi_h.style.textAlign = "left";
                    moveLegi_h.style.color = "rgb(255, 255, 255)";
                    moveLegi_h.style.verticalAlign = "baseline";
                    moveLegi_h.style.width = "auto";
                    moveLegi_h.style.height = "35px";
                    moveLegi_h.style.border = "0px none";
                    moveLegi_h.style.backgroundColor = "rgb(49, 126, 191)";
                   
                    buttonCloseLegenda.className = "";
                    buttonCloseLegenda.style.position = "absolute";
                    buttonCloseLegenda.style.align = "right";
                    buttonCloseLegenda.style.float = "right";
                    buttonCloseLegenda.style.fontSize = "16px";
                    buttonCloseLegenda.style.lineHeight = "23px";
                    buttonCloseLegenda.style.backgroundColor = "#63A9E9";
                    buttonCloseLegenda.style.color = "white";
                    buttonCloseLegenda.style.padding = "6px 13px";
                    buttonCloseLegenda.innerHTML = "X";
                    buttonCloseLegenda.style.cursor = "hand";
                    buttonCloseLegenda.style.top = "0";
                    buttonCloseLegenda.style.right = "0";
                    buttonCloseLegenda.style.zIndex = "1";
                   
                }else{
                    var myVar=setTimeout("moverLegendaTela()",1000);
                }
            }

    • 04f1e660b0aa64c4b4491da31b6b3356?only path=false&size=50&d=404Edmar Moretti(usuário não autenticado)
      3 de Setembro de 2014, 10:46

       

      Eu acho que seria melhor você sobrescrever a função javascript original.

      No seu código javascript, e depois do código original do i3Geo ter sido carregado, basta você copiar a função original e alterá-la, por exemplo, seria algo como:

      i3GEO.mapa.legendaHTML.libera = function(){
      //aqui vai o codigo novo ou o antigo modificado
      };

      O código original fica no arquivo i3geo/classesjs/classe_mapa.js

acesso à versão beta do i3geosaude

19 de Março de 2015, 10:03, por Desconhecido

Prezados amigos, 



comunidade i3geosaude

7 de Janeiro de 2015, 10:22, por Desconhecido

Prezados Colaboradores,



Primeira Reunião do Grupo de Trabalho do i3Geo ocorre no dia 20 de novembro

6 de Novembro de 2013, 17:46, por Desconhecido

Na manhã do dia 20 de novembro, junto ao Seminário Anual do SISP, acontecerá a 1a. Reunião do Grupo de Trabalho da solução i3Geo, para tratar de necessidades de melhoria ou adaptação da solução disponível no Portal SPB, para uso pela Administração Pública Federal. Os anseios dos dirigentes de TI do Sistema de Administração de Recursos de Tecnologia da Informação – SISP, em busca de soluções disponíveis no Portal do SPB que atendam às necessidades da Administração e de cada Órgão em específico, foram objeto de discussão em reuniões da Comissão de Coordenação do Sistema ao longo de 2013. A formação do Grupo de Trabalho do i3Geo é resultado das atividades já realizadas até o momento entre os órgãos integrantes do SISP na reflexão, modelagem e aprimoramento do conceito e da finalidade do Software Público para a Administração Pública e para a Sociedade.



Testes com o i3Geo (Geosaúde) em Manaus

24 de Setembro de 2013, 11:39, por Desconhecido

Projeto do Departamento de Monitoramento e Avaliação do SUS (DEMAS) do Ministério da Saúde, iniciou os testes e implantação do i3Geo, distribuição "Geosaúde", na Secretaria Municipal de Saúde de Manaus.



Funai cria Portal de mapas baseado em tecnologias livres (i3Geo)

1 de Agosto de 2011, 18:27, por Desconhecido

Autor: Edmar Moretti