QuickWMS-Extension/WMStools.js: Unterschied zwischen den Versionen
GISWiki - Das freie Portal für Geoinformatik (GIS)
HeinzJ (Diskussion | Beiträge) |
|||
Zeile 1: | Zeile 1: | ||
− | <pre>/* | + | <pre> |
+ | |||
+ | /* | ||
* Project quickWMS: Generic JavaScript WMS Client | * Project quickWMS: Generic JavaScript WMS Client | ||
* File : WMStools.js | * File : WMStools.js | ||
Zeile 13: | Zeile 15: | ||
* License : OpenSource (check license.txt in the same directory) | * License : OpenSource (check license.txt in the same directory) | ||
* History : | * History : | ||
− | + | 2003-10-24 : When in select mode clicking again in the selection button will disable the tool and hide the selection layer | |
− | + | 2003-04-23 : Documentation added | |
2003-03-20 : File Created | 2003-03-20 : File Created | ||
* Objects : | * Objects : | ||
Zeile 22: | Zeile 24: | ||
function toolBar(obRefName){ | function toolBar(obRefName){ | ||
− | + | //obRefName.toolBar=this; | |
− | + | this.map=obRefName; | |
− | + | this.images = new Array ('back.gif', 'forward.gif', 'home.gif', 'zsel.gif', 'zminus.gif', 'select.gif'); | |
− | + | this.help = new Array ('back to previous view', 'jump to next view', 'go to first to home view','select area to zoom', 'zoom out', 'select tool'); | |
− | + | this.events = new Array; | |
− | + | this.events[0]= function (map) {map.back();} | |
− | + | this.events[1]= function (map) {map.forward();} | |
− | + | this.events[2]= function (map) {map.home();} | |
− | + | this.events[3]= function (map) {map.toolMode='selzoom';map.toolbar.reset();map.toolbar.imgs[3].src=path_skin+'h_'+map.toolbar.images[3]} | |
− | + | this.events[4]= function (map) {map.toolMode='zoomout';map.toolbar.reset();map.toolbar.imgs[4].src=path_skin+'h_'+map.toolbar.images[4]} | |
− | + | this.events[5]= function (map) {if (map.toolMode=='selection') { | |
− | + | map.toolMode=''; | |
− | + | hideLayer(map.name+"Selection"); | |
− | + | map.toolbar.reset(); | |
− | + | } | |
− | + | else {map.toolMode='selection';map.toolbar.reset();map.toolbar.imgs[5].src=path_skin+'h_'+map.toolbar.images[5]} | |
− | + | } | |
− | + | ||
− | + | this.reset = function () { | |
− | + | for(i=0; i<this.images.length; i++){ | |
− | + | this.imgs[i].src=path_skin+this.images[i]; | |
− | + | } | |
− | + | } | |
− | + | ||
− | + | this.writeDOM = function ( x, y, horiz) { | |
− | + | var content=""; | |
− | + | if (browser.isOldNS){var style=""} | |
− | + | else {var style=" style='cursor:pointer;cursor:hand'"} | |
− | + | for(i=0; i<this.images.length; i++){ | |
− | + | content+="<img src='"+path_skin+this.images[i]+"'"+style+" width=24 height=24 border=0 alt='"+this.help[i]+"' onmouseup=getLayer('"+this.map.name+"ToolBar').reference.events["+i+"](getLayer('"+this.map.name+"ToolBar').reference.map)>"; | |
− | + | } | |
− | + | openLayerR(this.map.name+"ToolBar","","", x, y, 25*this.images.length, 25, true); | |
− | + | document.write(content); | |
− | + | closeLayer(); | |
− | + | ||
− | + | // 2003-10-24 : Note .. for the tools to be compatible with ns47 we should make a special case for it because it doesn't works with getElementXXX methods | |
− | + | if (browser.isNS47x) { | |
− | + | getLayer(this.map.name+"ToolBar").reference=this; | |
− | + | this.imgs=getLayer(this.map.name+"ToolBar").document.images; | |
− | + | } | |
− | + | else { | |
− | + | //getLayer(this.map.name+"ToolBar").reference=this; | |
− | + | //this.imgs=getLayer(this.map.name+"ToolBar").getElementsByTagName("img"); | |
− | + | // 2003-10-13 : changed this because of ns71 | |
− | + | document.getElementById(this.map.name+"ToolBar").reference=this; | |
− | + | this.imgs=document.getElementById(this.map.name+"ToolBar").getElementsByTagName("img"); | |
− | + | } | |
− | + | ||
− | + | } | |
} | } | ||
Zeile 77: | Zeile 79: | ||
{ | { | ||
− | + | var mouseX; | |
− | + | var mouseY; | |
− | + | if (browser.isIE50 || browser.isIE55 || browser.isIE60){e = window.event;} | |
− | + | ||
− | + | if (e.layerX) | |
− | + | { | |
− | + | mouseX =e.layerX; | |
− | + | mouseY =e.layerY; | |
− | + | } | |
− | + | else | |
− | + | if (browser.isOldNS) | |
− | + | { | |
− | + | mouseX=e.pageX; | |
− | + | mouseY=e.pageY; | |
− | + | } | |
else | else | ||
{ | { | ||
− | + | mouseX=e.clientX; | |
− | + | mouseY=e.clientY; | |
− | + | mouseX=e.offsetX; | |
− | + | mouseY=e.offsetY; | |
− | + | } | |
− | + | mouseX++; | |
− | + | mouseY++; | |
− | + | ||
− | + | mouseX=Math.round(mouseX/mouseGrid)*mouseGrid; | |
− | + | mouseY=Math.round(mouseY/mouseGrid)*mouseGrid; | |
− | + | ||
− | + | if (e.target){ | |
− | + | if (e.target.parent) return new layerPoint(e.target.parent,mouseX,mouseY); | |
− | + | } | |
− | + | else{ | |
− | + | if (e.srcElement){ | |
− | + | if (e.srcElement.parentElement){ | |
− | + | if (e.srcElement.parentElement.reference){ | |
− | + | return new layerPoint(e.srcElement.parentElement.reference,mouseX,mouseY) | |
− | + | } | |
− | + | } | |
− | + | } | |
− | + | else if (e.currentTarget) return new layerPoint(e.currentTarget.reference,mouseX,mouseY); | |
− | + | ||
− | + | } | |
} | } | ||
Zeile 125: | Zeile 127: | ||
− | function WMS_zoomTool(obRef, eventType, X, Y){ | + | function WMS_zoomTool(obRef, eventType, X, Y){ |
− | + | if (eventType=="mouseMove" && obRef.toolMode=="zooming"){ | |
− | + | showLayer(obRef.name+"zoom"); | |
− | + | obRef.setZoomBox(null,null,X,Y); | |
− | + | return true; | |
− | + | } | |
− | + | else | |
− | + | if (eventType=="mouseMove" && obRef.toolMode=="selecting"){ | |
− | + | showLayer(obRef.name+"Selection"); | |
− | + | if (obRef.onSelecting){ | |
− | + | var tX2=mouse2GeoX(obRef,X); | |
− | + | var tY1=mouse2GeoY(obRef,Y); | |
− | + | var tX1=obRef.slBox[0]; | |
− | + | var tY2=obRef.slBox[3]; | |
− | + | if (tX2<obRef.slBox[0]){ | |
− | + | tX1=tX2; | |
− | + | tX2=obRef.slBox[0]; | |
− | + | } | |
− | + | /*if (tY2<obRef.slBox[1]){ | |
− | + | tY1=tY2; | |
− | + | tY2=obRef.slBox[1]; | |
− | + | } | |
− | + | */ | |
− | + | if (obRef.onSelecting(obRef,tX1,tY1,tX2,tY2)){ | |
− | + | obRef.setSelection(null,null,X,Y); | |
− | + | } | |
− | + | } | |
− | + | else{ | |
− | + | obRef.setSelection(null,null,X,Y); | |
− | + | } | |
− | + | ||
− | + | return true; | |
− | + | } | |
− | + | else | |
− | + | if (eventType=="mouseDown") { | |
− | + | if (obRef.toolMode=="selzoom"){ | |
− | + | if(obRef.setZoomBox){ | |
− | + | if (obRef.toolMode=="zooming"){ | |
− | + | obRef.setZoomBox(null,null,X,Y); | |
− | + | } | |
− | + | else{ | |
− | + | obRef.setZoomBox(X,Y,X,Y); | |
− | + | obRef.toolMode="zooming"; | |
− | + | //showLayer(obRef.name+"Selection"); | |
− | + | } | |
− | + | } | |
− | + | } | |
− | + | if (obRef.toolMode=="selection"){ | |
− | + | if(obRef.setSelection){ | |
− | + | if (obRef.toolMode=="selecting"){ | |
− | + | obRef.setSelection(null,null,X,Y); | |
− | + | } | |
− | + | else{ | |
− | + | obRef.setSelection(X,Y,X,Y); | |
− | + | obRef.toolMode="selecting"; | |
− | + | //showLayer(obRef.name+"Selection"); | |
− | + | } | |
− | + | } | |
− | + | if (obRef.onSelecting){obRef.onSelecting(obRef,X,Y,X,Y)} | |
− | + | } | |
− | + | ||
− | + | ||
− | + | return true | |
− | + | } | |
− | + | else | |
− | + | if (eventType=="mouseUp") { | |
− | + | if (obRef.toolMode=="zooming"){ | |
− | + | if(obRef.setZoomBox){ | |
− | + | if (isVisible(obRef.name+"zoom")){ | |
− | + | obRef.setZoomBox(null,null,X,Y); | |
− | + | if ( X-geo2MouseX(obRef,obRef.zBox[0])<5 && Y-geo2MouseY(obRef,obRef.zBox[1])<5) { | |
− | + | obRef.zoomTo(mouse2GeoX(obRef,X),mouse2GeoY(obRef,Y),2); | |
− | + | } | |
− | + | else obRef.updateBBox( obRef.zBox[0], obRef.zBox[1],obRef.zBox[2],obRef.zBox[3]); | |
− | + | hideLayer(obRef.name+"zoom"); | |
− | + | } | |
− | + | else{ | |
− | + | obRef.zoomTo(mouse2GeoX(obRef,X),mouse2GeoY(obRef,Y),2); | |
− | + | hideLayer(obRef.name+"zoom"); | |
− | + | } | |
− | + | } | |
− | + | else{ | |
− | + | ||
− | + | } | |
− | + | obRef.toolMode="selzoom"; | |
− | + | return true; | |
− | + | } | |
− | + | if (obRef.toolMode=="zoomout"){ | |
− | + | obRef.zoomTo(mouse2GeoX(obRef,X),mouse2GeoY(obRef,Y),0.5); | |
− | + | return true; | |
− | + | } | |
− | + | if (obRef.toolMode=="selecting"){ | |
− | + | obRef.toolMode="selection"; | |
− | + | if (obRef.onSelection){obRef.onSelection(obRef,obRef.slBox[0],obRef.slBox[1],obRef.slBox[2],obRef.slBox[3])} | |
− | + | return true; | |
− | + | } | |
− | + | ||
− | + | } | |
− | + | else | |
− | + | return false | |
− | + | } | |
− | function WMS_mouseToolManager(eventType, X, Y){ | + | function WMS_mouseToolManager(eventType, X, Y){ |
− | + | if (true)//(this.toolMode=="selzoom" || this.toolMode=="zooming" || this.toolMode=="zoomout") | |
− | + | {return WMS_zoomTool(this,eventType, X, Y);} | |
− | + | else | |
− | + | return false; | |
− | + | } | |
function WMS_mouseUp(e){ | function WMS_mouseUp(e){ | ||
− | + | mouse=getMouseXY(e); | |
− | + | ||
− | + | if (mouse){ | |
− | + | if (!mouse.layer.mouseToolManager("mouseUp",mouse.X,mouse.Y)){ | |
− | + | if (mouse.layer.onMouseUp) | |
− | + | {mouse.layer.onMouseUp(mouse.layer, mouse.X,mouse.Y);} | |
− | + | } | |
− | + | } | |
− | + | // Returning true on a mouse event insures that window.status will not be | |
− | + | // overwritten (browser convention) | |
− | + | return false; | |
− | + | } | |
function WMS_mouseDown(e){ | function WMS_mouseDown(e){ | ||
− | + | mouse=getMouseXY(e); | |
− | + | //window.status+=mouse.X; | |
− | + | if (mouse){ | |
− | + | if (!mouse.layer.mouseToolManager("mouseDown",mouse.X,mouse.Y)){ | |
− | + | if (mouse.layer.onMouseUp){ | |
− | + | mouse.layer.onMouseUp(mouse.layer, mouse.X,mouse.Y); | |
− | + | } | |
− | + | } | |
− | + | } | |
− | + | // Returning true on a mouse event insures that window.status will not be | |
− | + | // overwritten (browser convention) | |
− | + | stopEventPropagation(e); | |
− | + | //return false; | |
− | + | return true; | |
− | + | } | |
function WMS_mouseMove(e){ | function WMS_mouseMove(e){ | ||
− | + | if (getMouseXY){ | |
− | + | mouse=getMouseXY(e); | |
− | + | if (mouse){ | |
− | + | if (!mouse.layer.mouseToolManager("mouseMove",mouse.X,mouse.Y)){ | |
− | + | if (mouse.layer.onMouseMove){ | |
− | + | mouse.layer.onMouseMove(mouse.layer,mouse2GeoX(mouse.layer,mouse.X),mouse2GeoY(mouse.layer,mouse.Y)); | |
− | + | } | |
− | + | } | |
− | + | } | |
− | + | stopEventPropagation(e); | |
− | + | return false;//true; | |
− | + | } | |
− | + | } | |
function changeBBox(obRef,value) | function changeBBox(obRef,value) | ||
{ | { | ||
− | + | if (value!=-1) | |
− | + | { | |
− | + | var box=value.split(','); | |
− | + | obRef.updateBBox (box[0],box[1],box[2],box[3]); | |
− | + | } | |
} | } | ||
Zeile 291: | Zeile 293: | ||
function changeSelectBBox(obRef,value) | function changeSelectBBox(obRef,value) | ||
{ | { | ||
− | + | if (value!=-1) | |
− | + | { | |
− | + | var box=value.split(','); | |
− | + | showLayer(obRef.name+"Selection"); | |
− | + | ||
− | + | obRef.updateBBox ( (box[0]/1)-20.0, (box[1]/1)-20.0, (box[2]/1)+20.0, (box[3]/1)+20.0); | |
− | // | + | // obRef.updateBBox ( 30-2, 40-2, 60+2, 50+2); |
− | + | obRef.setSelectionXY (box[0],box[1],box[2],box[3]); | |
− | + | } | |
} | } | ||
Zeile 307: | Zeile 309: | ||
function writeNavArrows(x,y, obRef){ | function writeNavArrows(x,y, obRef){ | ||
− | + | openLayer(obRef.name+"Arrows","","filter:alpha(opacity=80);-moz-opacity:0.80;border-style:solid;border-width:1;background-color:white;", x, y, 64,67, true); | |
− | + | ||
− | + | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:5;left:5' src='"+path_IMG+"nw.gif' width=24 height=24 border=0 alt=''>"); | |
− | + | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:2;left:20' src='"+path_IMG+"n.gif' width=24 height=24 border=0 alt=''>"); | |
− | + | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:5;left:35' src='"+path_IMG+"ne.gif' width=24 height=24 border=0 alt=''>"); | |
− | + | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:21;left:5' src='"+path_IMG+"w.gif' width=24 height=24 border=0 alt=''>"); | |
− | + | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:21;left:37' src='"+path_IMG+"e.gif' width=24 height=24 border=0 alt=''>"); | |
+ | |||
+ | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:38;left:5' src='"+path_IMG+"sw.gif' width=24 height=24 border=0 alt=''>"); | ||
+ | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:41;left:20' src='"+path_IMG+"s.gif' width=24 height=24 border=0 alt=''>"); | ||
+ | document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:38;left:35' src='"+path_IMG+"se.gif' width=24 height=24 border=0 alt=''>"); | ||
+ | } | ||
+ | */ | ||
− | + | </pre> | |
− | + | ||
− | + | ||
− | + | ||
− | + |
Aktuelle Version vom 19. August 2005, 21:14 Uhr
/* * Project quickWMS: Generic JavaScript WMS Client * File : WMStools.js * Author : Pedro Pereira Gonçalves * email : pedro.goncalves@esa.int or pedro@inovagis.org * Version : 0.1 * Description: Deals with mouse functions and basic WMS tools and toolbars * Please read coderules.txt before making any change * Tested on : Netscape 7.0, IE 5.5, IE 6.0 * Last Change : 2003-10-24 * Dependencies : WMSbrowsers.js * Future Developments : Pan buttons (left, right .. and so on ) * License : OpenSource (check license.txt in the same directory) * History : 2003-10-24 : When in select mode clicking again in the selection button will disable the tool and hide the selection layer 2003-04-23 : Documentation added 2003-03-20 : File Created * Objects : * Functions : */ function toolBar(obRefName){ //obRefName.toolBar=this; this.map=obRefName; this.images = new Array ('back.gif', 'forward.gif', 'home.gif', 'zsel.gif', 'zminus.gif', 'select.gif'); this.help = new Array ('back to previous view', 'jump to next view', 'go to first to home view','select area to zoom', 'zoom out', 'select tool'); this.events = new Array; this.events[0]= function (map) {map.back();} this.events[1]= function (map) {map.forward();} this.events[2]= function (map) {map.home();} this.events[3]= function (map) {map.toolMode='selzoom';map.toolbar.reset();map.toolbar.imgs[3].src=path_skin+'h_'+map.toolbar.images[3]} this.events[4]= function (map) {map.toolMode='zoomout';map.toolbar.reset();map.toolbar.imgs[4].src=path_skin+'h_'+map.toolbar.images[4]} this.events[5]= function (map) {if (map.toolMode=='selection') { map.toolMode=''; hideLayer(map.name+"Selection"); map.toolbar.reset(); } else {map.toolMode='selection';map.toolbar.reset();map.toolbar.imgs[5].src=path_skin+'h_'+map.toolbar.images[5]} } this.reset = function () { for(i=0; i<this.images.length; i++){ this.imgs[i].src=path_skin+this.images[i]; } } this.writeDOM = function ( x, y, horiz) { var content=""; if (browser.isOldNS){var style=""} else {var style=" style='cursor:pointer;cursor:hand'"} for(i=0; i<this.images.length; i++){ content+="<img src='"+path_skin+this.images[i]+"'"+style+" width=24 height=24 border=0 alt='"+this.help[i]+"' onmouseup=getLayer('"+this.map.name+"ToolBar').reference.events["+i+"](getLayer('"+this.map.name+"ToolBar').reference.map)>"; } openLayerR(this.map.name+"ToolBar","","", x, y, 25*this.images.length, 25, true); document.write(content); closeLayer(); // 2003-10-24 : Note .. for the tools to be compatible with ns47 we should make a special case for it because it doesn't works with getElementXXX methods if (browser.isNS47x) { getLayer(this.map.name+"ToolBar").reference=this; this.imgs=getLayer(this.map.name+"ToolBar").document.images; } else { //getLayer(this.map.name+"ToolBar").reference=this; //this.imgs=getLayer(this.map.name+"ToolBar").getElementsByTagName("img"); // 2003-10-13 : changed this because of ns71 document.getElementById(this.map.name+"ToolBar").reference=this; this.imgs=document.getElementById(this.map.name+"ToolBar").getElementsByTagName("img"); } } } function getMouseXY(e) { var mouseX; var mouseY; if (browser.isIE50 || browser.isIE55 || browser.isIE60){e = window.event;} if (e.layerX) { mouseX =e.layerX; mouseY =e.layerY; } else if (browser.isOldNS) { mouseX=e.pageX; mouseY=e.pageY; } else { mouseX=e.clientX; mouseY=e.clientY; mouseX=e.offsetX; mouseY=e.offsetY; } mouseX++; mouseY++; mouseX=Math.round(mouseX/mouseGrid)*mouseGrid; mouseY=Math.round(mouseY/mouseGrid)*mouseGrid; if (e.target){ if (e.target.parent) return new layerPoint(e.target.parent,mouseX,mouseY); } else{ if (e.srcElement){ if (e.srcElement.parentElement){ if (e.srcElement.parentElement.reference){ return new layerPoint(e.srcElement.parentElement.reference,mouseX,mouseY) } } } else if (e.currentTarget) return new layerPoint(e.currentTarget.reference,mouseX,mouseY); } } function WMS_zoomTool(obRef, eventType, X, Y){ if (eventType=="mouseMove" && obRef.toolMode=="zooming"){ showLayer(obRef.name+"zoom"); obRef.setZoomBox(null,null,X,Y); return true; } else if (eventType=="mouseMove" && obRef.toolMode=="selecting"){ showLayer(obRef.name+"Selection"); if (obRef.onSelecting){ var tX2=mouse2GeoX(obRef,X); var tY1=mouse2GeoY(obRef,Y); var tX1=obRef.slBox[0]; var tY2=obRef.slBox[3]; if (tX2<obRef.slBox[0]){ tX1=tX2; tX2=obRef.slBox[0]; } /*if (tY2<obRef.slBox[1]){ tY1=tY2; tY2=obRef.slBox[1]; } */ if (obRef.onSelecting(obRef,tX1,tY1,tX2,tY2)){ obRef.setSelection(null,null,X,Y); } } else{ obRef.setSelection(null,null,X,Y); } return true; } else if (eventType=="mouseDown") { if (obRef.toolMode=="selzoom"){ if(obRef.setZoomBox){ if (obRef.toolMode=="zooming"){ obRef.setZoomBox(null,null,X,Y); } else{ obRef.setZoomBox(X,Y,X,Y); obRef.toolMode="zooming"; //showLayer(obRef.name+"Selection"); } } } if (obRef.toolMode=="selection"){ if(obRef.setSelection){ if (obRef.toolMode=="selecting"){ obRef.setSelection(null,null,X,Y); } else{ obRef.setSelection(X,Y,X,Y); obRef.toolMode="selecting"; //showLayer(obRef.name+"Selection"); } } if (obRef.onSelecting){obRef.onSelecting(obRef,X,Y,X,Y)} } return true } else if (eventType=="mouseUp") { if (obRef.toolMode=="zooming"){ if(obRef.setZoomBox){ if (isVisible(obRef.name+"zoom")){ obRef.setZoomBox(null,null,X,Y); if ( X-geo2MouseX(obRef,obRef.zBox[0])<5 && Y-geo2MouseY(obRef,obRef.zBox[1])<5) { obRef.zoomTo(mouse2GeoX(obRef,X),mouse2GeoY(obRef,Y),2); } else obRef.updateBBox( obRef.zBox[0], obRef.zBox[1],obRef.zBox[2],obRef.zBox[3]); hideLayer(obRef.name+"zoom"); } else{ obRef.zoomTo(mouse2GeoX(obRef,X),mouse2GeoY(obRef,Y),2); hideLayer(obRef.name+"zoom"); } } else{ } obRef.toolMode="selzoom"; return true; } if (obRef.toolMode=="zoomout"){ obRef.zoomTo(mouse2GeoX(obRef,X),mouse2GeoY(obRef,Y),0.5); return true; } if (obRef.toolMode=="selecting"){ obRef.toolMode="selection"; if (obRef.onSelection){obRef.onSelection(obRef,obRef.slBox[0],obRef.slBox[1],obRef.slBox[2],obRef.slBox[3])} return true; } } else return false } function WMS_mouseToolManager(eventType, X, Y){ if (true)//(this.toolMode=="selzoom" || this.toolMode=="zooming" || this.toolMode=="zoomout") {return WMS_zoomTool(this,eventType, X, Y);} else return false; } function WMS_mouseUp(e){ mouse=getMouseXY(e); if (mouse){ if (!mouse.layer.mouseToolManager("mouseUp",mouse.X,mouse.Y)){ if (mouse.layer.onMouseUp) {mouse.layer.onMouseUp(mouse.layer, mouse.X,mouse.Y);} } } // Returning true on a mouse event insures that window.status will not be // overwritten (browser convention) return false; } function WMS_mouseDown(e){ mouse=getMouseXY(e); //window.status+=mouse.X; if (mouse){ if (!mouse.layer.mouseToolManager("mouseDown",mouse.X,mouse.Y)){ if (mouse.layer.onMouseUp){ mouse.layer.onMouseUp(mouse.layer, mouse.X,mouse.Y); } } } // Returning true on a mouse event insures that window.status will not be // overwritten (browser convention) stopEventPropagation(e); //return false; return true; } function WMS_mouseMove(e){ if (getMouseXY){ mouse=getMouseXY(e); if (mouse){ if (!mouse.layer.mouseToolManager("mouseMove",mouse.X,mouse.Y)){ if (mouse.layer.onMouseMove){ mouse.layer.onMouseMove(mouse.layer,mouse2GeoX(mouse.layer,mouse.X),mouse2GeoY(mouse.layer,mouse.Y)); } } } stopEventPropagation(e); return false;//true; } } function changeBBox(obRef,value) { if (value!=-1) { var box=value.split(','); obRef.updateBBox (box[0],box[1],box[2],box[3]); } } function changeSelectBBox(obRef,value) { if (value!=-1) { var box=value.split(','); showLayer(obRef.name+"Selection"); obRef.updateBBox ( (box[0]/1)-20.0, (box[1]/1)-20.0, (box[2]/1)+20.0, (box[3]/1)+20.0); // obRef.updateBBox ( 30-2, 40-2, 60+2, 50+2); obRef.setSelectionXY (box[0],box[1],box[2],box[3]); } } //undocumented functions /* function writeNavArrows(x,y, obRef){ openLayer(obRef.name+"Arrows","","filter:alpha(opacity=80);-moz-opacity:0.80;border-style:solid;border-width:1;background-color:white;", x, y, 64,67, true); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:5;left:5' src='"+path_IMG+"nw.gif' width=24 height=24 border=0 alt=''>"); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:2;left:20' src='"+path_IMG+"n.gif' width=24 height=24 border=0 alt=''>"); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:5;left:35' src='"+path_IMG+"ne.gif' width=24 height=24 border=0 alt=''>"); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:21;left:5' src='"+path_IMG+"w.gif' width=24 height=24 border=0 alt=''>"); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:21;left:37' src='"+path_IMG+"e.gif' width=24 height=24 border=0 alt=''>"); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:38;left:5' src='"+path_IMG+"sw.gif' width=24 height=24 border=0 alt=''>"); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:41;left:20' src='"+path_IMG+"s.gif' width=24 height=24 border=0 alt=''>"); document.write("<img onclick=moveBy('"+obRef.name+"') style='position:absolute;top:38;left:35' src='"+path_IMG+"se.gif' width=24 height=24 border=0 alt=''>"); } */