From 7a1a9cc48432d895c65916df112af5f8e414f5c1 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Thu, 8 Jan 2015 01:59:02 +0000 Subject: [PATCH] --- classesjs/classe_ajuda.js | 8 +++++--- classesjs/classe_eventos.js | 265 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------------------------ ferramentas/inserexy2/index.js | 5 ++--- 3 files changed, 152 insertions(+), 126 deletions(-) diff --git a/classesjs/classe_ajuda.js b/classesjs/classe_ajuda.js index 8c5e9ca..85de413 100644 --- a/classesjs/classe_ajuda.js +++ b/classesjs/classe_ajuda.js @@ -251,14 +251,16 @@ i3GEO.ajuda = if (arguments.length === 0) { mensagem = i3GEO.parametros.mensagens; } - if (i3GEO.eventos.NAVEGAMAPA.toString().search("i3GEO.ajuda.ativaLetreiro()") < 0) { - i3GEO.eventos.NAVEGAMAPA.push("i3GEO.ajuda.ativaLetreiro()"); - } + i3GEO.eventos.adicionaEventos("NAVEGAMAPA",["i3GEO.ajuda.ativaLetreiro()"]); try { clearTimeout(i3GEO.ajuda.tempoLetreiro); } catch (e) { i3GEO.ajuda.tempoLetreiro = ""; } + if (mensagem === ""){ + i3GEO.eventos.removEventos("NAVEGAMAPA",["i3GEO.ajuda.ativaLetreiro()"]); + return; + } l = $i(i3GEO.ajuda.DIVLETREIRO); if (l.style.display === "none") { return; diff --git a/classesjs/classe_eventos.js b/classesjs/classe_eventos.js index 19e0d89..4a559ce 100644 --- a/classesjs/classe_eventos.js +++ b/classesjs/classe_eventos.js @@ -28,49 +28,36 @@ * */ -//TODO criar metodos para remover e adicionar eventos - /** - * Licença - * - * GPL2 - * - * 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@gmail.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 ADEQUACÃ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. - */ + * Licença + * + * GPL2 + * + * 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@gmail.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 ADEQUACÃ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. + */ if (typeof (i3GEO) === 'undefined') { var i3GEO = {}; } /** * Variavel: objposicaocursor - * + * * Utilizada como variável global para armazenar a posição do mouse - * + * * (start code) - * - * objposicaocursor = { - * ddx : "", - * ddy : "", - * dmsx : "", - * dmsy : "", - * telax : "", - * telay : "", - * imgx : "", - * imgy : "", - * refx : "", - * refy : "" - * }; - * + * + * objposicaocursor = { ddx : "", ddy : "", dmsx : "", dmsy : "", telax : "", telay : "", imgx : "", imgy : "", refx : "", refy : "" }; + * * (end) */ objposicaocursor = { @@ -90,91 +77,91 @@ i3GEO.eventos = { /** * Variavel: SELECAO - * + * * Armazena as funções (eventos) que serão executadas quando uma operação de seleção e concluida. - * + * * Tipo: - * + * * {Array} */ SELECAO : [], /** * Variavel: ATUALIZAARVORECAMADAS - * + * * Armazena as funções (eventos) que serão executadas quando a árvore de camadas for atualizada. - * + * * Tipo: - * + * * {Array} */ ATUALIZAARVORECAMADAS : [], /** * Variavel: ATIVATEMA - * + * * Armazena as funções (eventos) que serão executadas quando um tema da árvore de camadas é * ativado. - * + * * Tipo: - * + * * {Array} */ ATIVATEMA : [], /** * Variavel: NAVEGAMAPA - * + * * Armazena as funções que serão executadas quando é feita uma operação de * navegação sobre o mapa. - * + * * Tipo: - * + * * {Array} */ NAVEGAMAPA : [], /** * Variavel: MOUSEPARADO - * + * * Armazena as funções que serão executadas quando o usuário estaciona o mouse sobre o mapa por alguns * instantes. - * + * * Tipo: - * + * * {Array} - * + * */ MOUSEPARADO : [ ], /** * Variavel: MOUSEMOVE - * + * * Armazena as funções que serão executadas quando o usuário move o mouse sobre o mapa - * + * * Tipo: - * + * * {Array} */ MOUSEMOVE : [], /** * Variavel: MOUSEDOWN - * + * * Armazena as funções que serão executadas quando o usuário pressiona o botão do mouse sobre o * mapa - * + * * Tipo: - * + * * {Array} */ MOUSEDOWN : [], /** * Variavel: MOUSEUP - * + * * Armazena as funções que serão executadas quando o usuário solta o botão do mouse sobre o mapa - * + * * Tipo: - * + * * {Array} - * + * * Default: - * + * * {["i3GEO.eventos.cliquePerm.executa()"]} */ MOUSEUP : [ @@ -182,15 +169,15 @@ i3GEO.eventos = ], /** * Variavel: MOUSECLIQUE - * + * * Armazena as funções que serão executadas quando o usuário clica sobre o mapa - * + * * Tipo: - * + * * {Array} - * + * * Default: - * + * * {["i3GEO.eventos.cliqueCapturaPt()"]} */ MOUSECLIQUE : [ @@ -198,18 +185,18 @@ i3GEO.eventos = ], /** * Variavel: MOUSECLIQUEPERM - * + * * Armazena as funções permanentes que serão executadas quando o usuário clica sobre o mapa - * + * * As operações definidas aqui normalmente não fazem verificação de status de outras ferramentas * e podem ser bloqueadas momentaneamente alterando-se i3GEO.eventos.cliquePerm.status - * + * * Tipo: - * + * * {Array} - * + * * Default: - * + * * i3GEO.configura.funcaoTip */ MOUSECLIQUEPERM : [ @@ -217,19 +204,19 @@ i3GEO.eventos = ], /** * Timer utilizado pelo contador do mouse parado - * + * * Tipo: - * + * * {Timeout} */ TIMERPARADO : "", /** * Function: mouseParado - * + * * Executa as funções definidas em MOUSEPARADO quando é detectado que o mouse está estacionado. - * + * * A execução desse evento é controlado por um timer definido no evento onmousemove (sobre o mapa). - * + * */ mouseParado : function() { try { @@ -257,7 +244,7 @@ i3GEO.eventos = }, /** * Function: navegaMapa - * + * * Executa as funções armazenadas em NAVEGAMAPA, ou seja, operações executadas quando o mapa tem sua * extensão geográfica alterada. */ @@ -266,7 +253,7 @@ i3GEO.eventos = }, /** * Function: mousemoveMapa - * + * * Executa as funções armazenadas em MOUSEMOVE. */ mousemoveMapa : function() { @@ -274,7 +261,7 @@ i3GEO.eventos = }, /** * Function: mousedownMapa - * + * * Executa as funções armazenadas em MOUSEDOWN. */ mousedownMapa : function() { @@ -282,7 +269,7 @@ i3GEO.eventos = }, /** * Function: mouseupMapa - * + * * Executa as funções armazenadas em MOUSEUP. */ mouseupMapa : function(exy) { @@ -306,7 +293,7 @@ i3GEO.eventos = }, /** * Function: mousecliqueMapa - * + * * Executa as funções armazenadas em MOUSECLIQUE. */ mousecliqueMapa : function() { @@ -314,9 +301,9 @@ i3GEO.eventos = }, /** * Executa a pilha de nomes de funcoes ou funcoes armazenados em um array - * + * * Parameter: - * + * * eventos {array} - array com os nomes das funções */ executaEventos : function(eventos) { @@ -347,34 +334,71 @@ i3GEO.eventos = } }, /** + * Function: removeEventos + * + * Remove uma lista de eventos registrados + * + * Parameters: + * + * {string} - tipo de evento (MOUSECLIQUE por exemplo) + * + * {array} - lista dos nomes dos eventos registrados + */ + removeEventos : function(tipo,eventos){ + var i,n = eventos.length; + for(i=0;i