Pulled down bug fixes, example updates, etc. r717:r787 from source:/branches/openlayers/1.0.

git-svn-id: http://svn.openlayers.org/trunk/openlayers@788 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
Schuyler Erle
2006-06-27 04:40:52 +00:00
parent ef65e851b9
commit c92cd6d88a
32 changed files with 128 additions and 142 deletions

View File

@@ -6,5 +6,9 @@ Philip Lindsay
John Frank John Frank
Schuyler Erle Schuyler Erle
Patch contributors
------------------
Corey Puffault
OpenLayers is graciously supported by MetaCarta, Inc. OpenLayers is graciously supported by MetaCarta, Inc.
<http://www.metacarta.com>. <http://www.metacarta.com>.

View File

@@ -2,8 +2,8 @@
<head> <head>
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -27,7 +27,8 @@
map.addLayers([ol_wms, jpl_wms, cie_wms]); map.addLayers([ol_wms, jpl_wms, cie_wms]);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.setCenter(new OpenLayers.LonLat(0, 0), 0); // map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.zoomToFullExtent();
} }
// --> // -->
</script> </script>

View File

@@ -2,8 +2,8 @@
<head> <head>
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -24,7 +24,8 @@
map.addLayers([ol_wms, jpl_wms]); map.addLayers([ol_wms, jpl_wms]);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.setCenter(new OpenLayers.LonLat(0, 0), 0); // map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.zoomToFullExtent();
map.events.register("click", map, function(e) { map.events.register("click", map, function(e) {
var lonlat = map.getLonLatFromViewPortPx(e.xy); var lonlat = map.getLonLatFromViewPortPx(e.xy);
alert("You clicked near " + lonlat.lat + " N, " + alert("You clicked near " + lonlat.lat + " N, " +

View File

@@ -2,8 +2,8 @@
<head> <head>
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -34,7 +34,8 @@
map.addControl(new OpenLayers.Control.PanZoomBar()); map.addControl(new OpenLayers.Control.PanZoomBar());
map.addControl(new OpenLayers.Control.MouseToolbar()); map.addControl(new OpenLayers.Control.MouseToolbar());
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.setCenter(new OpenLayers.LonLat(0, 0), 0); // map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.zoomToFullExtent();
} }
// --> // -->
</script> </script>

View File

@@ -2,8 +2,8 @@
<head> <head>
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -31,7 +31,8 @@
map.addLayers([ol_wms, jpl_wms, dm_wms]); map.addLayers([ol_wms, jpl_wms, dm_wms]);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.setCenter(new OpenLayers.LonLat(0, 0), 0); // map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.zoomToFullExtent();
} }
// --> // -->
</script> </script>

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
background-color: red; background-color: red;
} }

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -25,14 +25,15 @@
size = new OpenLayers.Size(50,50); size = new OpenLayers.Size(50,50);
calculateOffset = function(size) { calculateOffset = function(size) {
return new OpenLayers.Pixel(-(size.w/2), -size.h); return new OpenLayers.Pixel(-(size.w/2), -size.h); };
}; icon = new OpenLayers.Icon(
icon = new OpenLayers.Icon('http://boston.openguides.org/markers/AQUA.png',size,null, calculateOffset); 'http://boston.openguides.org/markers/AQUA.png',
markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(-180,90), size, null, calculateOffset);
icon)); markers.addMarker(
new OpenLayers.Marker(new OpenLayers.LonLat(-180,90), icon));
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.zoomToFullExtent();
} }
function resize() { function resize() {

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -31,8 +31,8 @@
marker = new OpenLayers.Marker(new OpenLayers.LonLat(90,10),icon); marker = new OpenLayers.Marker(new OpenLayers.LonLat(90,10),icon);
marker.events.register('mousedown', marker, function(evt) { alert(this.icon.url); Event.stop(evt); }); marker.events.register('mousedown', marker, function(evt) { alert(this.icon.url); Event.stop(evt); });
markers.addMarker(marker); markers.addMarker(marker);
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.zoomToFullExtent();
} }
// --> // -->
</script> </script>

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -23,8 +23,8 @@
var newl = new OpenLayers.Layer.Text( "text", "./textfile.txt" ); var newl = new OpenLayers.Layer.Text( "text", "./textfile.txt" );
map.addLayer(newl); map.addLayer(newl);
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.zoomToFullExtent();
} }
// --> // -->
</script> </script>

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -34,8 +34,8 @@
markers = new OpenLayers.Layer.Markers( "Markers" ); markers = new OpenLayers.Layer.Markers( "Markers" );
map.addLayer(markers); map.addLayer(markers);
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.zoomToFullExtent();
} }
function changer() { function changer() {

View File

@@ -11,7 +11,7 @@
--> -->
<head> <head>
<script src="../lib/OpenLayers.js"></script> <script src="http://openlayers.org/dev/lib/OpenLayers.js"></script>
<script> <script>
@@ -48,8 +48,6 @@ function runMVS() {
theArgs.center = "0,0"; theArgs.center = "0,0";
theArgs.zoom = "0"; theArgs.zoom = "0";
theArgs.data = "textfile.txt"; theArgs.data = "textfile.txt";
theArgs.controls = ['panzoom','mouse'];
theArgs.layers = ['openlayers', 'nasa'];
} }
@@ -60,9 +58,7 @@ function runMVS() {
var DEFAULT_LAT = 0; var DEFAULT_LAT = 0;
var DEFAULT_LON = 0; var DEFAULT_LON = 0;
var DEFAULT_ZOOM_LEVEL = 0; var DEFAULT_ZOOM_LEVEL = 0;
var DEFAULT_CONTROLS = ['panzoom','mouse'];
var DEFAULT_LAYERS = ['openlayers', 'nasa'];
var IDX_LAT = 0; var IDX_LAT = 0;
var IDX_LON = 1; var IDX_LON = 1;
@@ -73,57 +69,30 @@ function runMVS() {
parseFloat(theArgs.center.split(",")[IDX_LON]) : DEFAULT_LON; parseFloat(theArgs.center.split(",")[IDX_LON]) : DEFAULT_LON;
safeArgs.zoom = theArgs.zoom ? parseInt(theArgs.zoom) : DEFAULT_ZOOM_LEVEL; safeArgs.zoom = theArgs.zoom ? parseInt(theArgs.zoom) : DEFAULT_ZOOM_LEVEL;
safeArgs.controls = theArgs.controls ?
theArgs.controls.split(",") : DEFAULT_CONTROLS;
safeArgs.controls = theArgs.controls ?
theArgs.controls.split(",") : DEFAULT_CONTROLS;
safeArgs.layers = theArgs.layers ?
theArgs.layers.split(",") : DEFAULT_LAYERS;
safeArgs.data = theArgs.data; // TODO: Make this "safe". safeArgs.data = theArgs.data; // TODO: Make this "safe".
// ----- // -----
var theMVS = new OpenLayers.Map($('map'), {controls: []}); var theMVS = new OpenLayers.Map('map', {maxResolution: 'auto'});
for(var i = 0; i < safeArgs.controls.length; i++) { theMVS.addLayer(
switch(safeArgs.controls[i]) { new OpenLayers.Layer.WMS("OpenLayers WMS",
case 'panzoombar': "http://labs.metacarta.com/wms/vmap0?",
theMVS.addControl(new OpenLayers.Control.PanZoomBar()); {layers: 'basic'}
break; ));
case 'panzoom':
theMVS.addControl(new OpenLayers.Control.PanZoom()); /* not yet.....
break;
case 'layerswitcher': theMVS.addLayer(
theMVS.addControl(new OpenLayers.Control.LayerSwitcher()); new OpenLayers.Layer.WMS("NASA Mosaic",
break; "http://wms.jpl.nasa.gov/wms.cgi",
case 'mouse': {"EXCEPTIONS" : "application/vnd.ogc.se_inimage",
theMVS.addControl(new OpenLayers.Control.MouseDefaults()); "format" : "image/jpeg",
break; layers:"modis,global_mosaic"}
} ));
} */
for(var i = 0; i < safeArgs.layers.length; i++) { theMVS.setCenter(
switch(safeArgs.layers[i]) { new OpenLayers.LonLat(safeArgs.centerLon, safeArgs.centerLat),
case 'openlayers': safeArgs.zoom);
theMVS.addLayer(
new OpenLayers.Layer.WMS( "OpenLayers WMS",
"http://labs.metacarta.com/wms/vmap0",
{layers: 'basic'} )
);
break;
case 'nasa':
theMVS.addLayer(
new OpenLayers.Layer.WMS("NASA Mosaic",
"http://wms.jpl.nasa.gov/wms.cgi",
{"EXCEPTIONS" : "application/vnd.ogc.se_inimage",
"format" : "image/jpeg",
layers:"modis,global_mosaic"}
));
break;
}
}
theMVS.setCenter(new OpenLayers.LonLat(safeArgs.centerLon, safeArgs.centerLat), safeArgs.zoom);
if (safeArgs.data) { if (safeArgs.data) {
theMVS.addLayer(new OpenLayers.Layer.Text("Data", safeArgs.data)); theMVS.addLayer(new OpenLayers.Layer.Text("Data", safeArgs.data));

View File

@@ -2,8 +2,8 @@
<head> <head>
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -11,7 +11,7 @@
<script type="text/javascript"> <script type="text/javascript">
<!-- <!--
function init(){ function init(){
var map = new OpenLayers.Map('map'); var map = new OpenLayers.Map('map', {maxResolution: 'auto'});
var ol_wms = new OpenLayers.Layer.WMS.Untiled( "OpenLayers WMS", var ol_wms = new OpenLayers.Layer.WMS.Untiled( "OpenLayers WMS",
"http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} ); "http://labs.metacarta.com/wms/vmap0?", {layers: 'basic'} );

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -20,14 +20,8 @@
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} ); "http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
map.addLayer(layer); map.addLayer(layer);
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS2",
"http://octo.metacarta.com/cgi-bin/mapserv",
{map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'} );
map.addLayer(layer);
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.zoomToFullExtent();
} }
function changer() { function changer() {

View File

@@ -2,8 +2,8 @@
<head> <head>
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>
@@ -14,20 +14,18 @@
var map, layer; var map, layer;
function init(){ function init(){
OpenLayers.ProxyHost = '/dev/examples/proxy.cgi?url=';
map = new OpenLayers.Map('map'); map = new OpenLayers.Map('map');
layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
"http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} ); "http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
map.addLayer(layer); map.addLayer(layer);
layer = new OpenLayers.Layer.WFS( "OpenLayers WFS", layer = new OpenLayers.Layer.WFS( "Owl Survey",
"http://labs.metacarta.com/search/WFS?", "http://www.bsc-eoc.org/cgi-bin/bsc_ows.asp?",
{q: 'dolphins', maxfeatures: 10} ); {typename: "OWLS", maxfeatures: 10},
OpenLayers.Feature.WFS );
map.addLayer(layer); map.addLayer(layer);
map.setCenter(new OpenLayers.LonLat(0, 0), 0);
map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.LayerSwitcher());
map.setCenter(new OpenLayers.LonLat(-100, 60), 3);
} }
// --> // -->
</script> </script>

View File

@@ -3,8 +3,8 @@
<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!--> <meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->
<style type="text/css"> <style type="text/css">
#map { #map {
width: 800px; width: 512px;
height: 475px; height: 512px;
border: 1px solid black; border: 1px solid black;
} }
</style> </style>

View File

@@ -6,7 +6,11 @@
/// ///
OpenLayers = new Object(); OpenLayers = new Object();
OpenLayers._scriptName = "lib/OpenLayers.js";
OpenLayers._scriptName = (
typeof(_OPENLAYERS_SFL_) == "undefined" ? "lib/OpenLayers.js"
: "OpenLayers.js" );
OpenLayers._getScriptLocation = function () { OpenLayers._getScriptLocation = function () {
var scriptLocation = ""; var scriptLocation = "";
var SCRIPT_NAME = OpenLayers._scriptName; var SCRIPT_NAME = OpenLayers._scriptName;

View File

@@ -2,7 +2,7 @@
* See http://svn.openlayers.org/trunk/openlayers/license.txt for the full * See http://svn.openlayers.org/trunk/openlayers/license.txt for the full
* text of the license. */ * text of the license. */
OpenLayers.ProxyHost = "/viewer/Crossbrowser/blindproxy.py?url="; OpenLayers.ProxyHost = "/proxy/?url=";
//OpenLayers.ProxyHost = "examples/proxy.cgi?url="; //OpenLayers.ProxyHost = "examples/proxy.cgi?url=";
/** /**
@@ -51,11 +51,6 @@ OpenLayers.loadURL = function(uri, params, caller,
if (OpenLayers.ProxyHost && uri.startsWith("http")) { if (OpenLayers.ProxyHost && uri.startsWith("http")) {
uri = OpenLayers.ProxyHost + escape(uri); uri = OpenLayers.ProxyHost + escape(uri);
if (!params) {
params="";
}
params += "&cachehack=" + new Date().getTime();
} }
var success = (onComplete) ? onComplete.bind(caller) var success = (onComplete) ? onComplete.bind(caller)
@@ -110,4 +105,4 @@ OpenLayers.parseXMLString = function(text) {
); );
return ajaxResponse; return ajaxResponse;
}; };

View File

@@ -143,6 +143,8 @@ OpenLayers.Control.LayerSwitcher.prototype =
backdropLabelOuter.style.marginTop = "4px"; backdropLabelOuter.style.marginTop = "4px";
backdropLabelOuter.style.marginBottom = "4px"; backdropLabelOuter.style.marginBottom = "4px";
this._setEventHandlers(backdropLabelOuter);
// Inner Label - for Rico Corners // Inner Label - for Rico Corners
// //
var backdropLabel = document.createElement('p'); var backdropLabel = document.createElement('p');
@@ -191,9 +193,10 @@ OpenLayers.Control.LayerSwitcher.prototype =
_setEventHandlers : function(element, labelDiv) { _setEventHandlers : function(element, labelDiv) {
// We only want to respond to a mousedown event. // We only want to respond to a mousedown event.
element.onclick = this.ignoreEvent.bindAsEventListener(this); element.onclick = this.singleClick.bindAsEventListener(this);
element.ondblclick = this.ignoreEvent.bindAsEventListener(this); element.ondblclick = this.singleClick.bindAsEventListener(this);
element.onmousedown = this.singleClick.bindAsEventListener(this); element.onmouseup = this.ignoreEvent.bindAsEventListener(this);
element.onmousedown = this.ignoreEvent.bindAsEventListener(this);
// If we are operating on a corner span we need to store a // If we are operating on a corner span we need to store a
// reference to the actual tab. (See comment about OL #57 fix above.) // reference to the actual tab. (See comment about OL #57 fix above.)

View File

@@ -22,6 +22,7 @@ OpenLayers.Control.MouseDefaults.prototype =
}, },
defaultClick: function (evt) { defaultClick: function (evt) {
if (!Event.isLeftClick(evt)) return;
var notAfterDrag = !this.performedDrag; var notAfterDrag = !this.performedDrag;
this.performedDrag = false; this.performedDrag = false;
return notAfterDrag; return notAfterDrag;
@@ -39,6 +40,7 @@ OpenLayers.Control.MouseDefaults.prototype =
* @param {Event} evt * @param {Event} evt
*/ */
defaultMouseDown: function (evt) { defaultMouseDown: function (evt) {
if (!Event.isLeftClick(evt)) return;
this.mouseDragStart = evt.xy.copyOf(); this.mouseDragStart = evt.xy.copyOf();
this.performedDrag = false; this.performedDrag = false;
if (evt.shiftKey) { if (evt.shiftKey) {
@@ -94,6 +96,7 @@ OpenLayers.Control.MouseDefaults.prototype =
* @param {Event} evt * @param {Event} evt
*/ */
defaultMouseUp: function (evt) { defaultMouseUp: function (evt) {
if (!Event.isLeftClick(evt)) return;
if (this.zoomBox) { if (this.zoomBox) {
var start = this.map.getLonLatFromViewPortPx( this.mouseDragStart ); var start = this.map.getLonLatFromViewPortPx( this.mouseDragStart );
var end = this.map.getLonLatFromViewPortPx( evt.xy ); var end = this.map.getLonLatFromViewPortPx( evt.xy );

View File

@@ -63,7 +63,7 @@ OpenLayers.Control.MouseToolbar.prototype =
btn.events = new OpenLayers.Events(this, btn); btn.events = new OpenLayers.Events(this, btn);
btn.events.register("mousedown", this, this.buttonClick); btn.events.register("mousedown", this, this.buttonClick);
btn.events.register("mouseup", this, this.stopAction); btn.events.register("mouseup", this, Event.stop);
btn.action = id; btn.action = id;
btn.title = title; btn.title = title;
btn.alt = title; btn.alt = title;
@@ -74,11 +74,8 @@ OpenLayers.Control.MouseToolbar.prototype =
return btn; return btn;
}, },
stopAction: function(evt) {
Event.stop(evt);
},
buttonClick: function(evt) { buttonClick: function(evt) {
if (!Event.isLeftClick(evt)) return;
this.switchModeTo(evt.div.action); this.switchModeTo(evt.div.action);
Event.stop(evt); Event.stop(evt);
}, },
@@ -96,6 +93,7 @@ OpenLayers.Control.MouseToolbar.prototype =
* @param {Event} evt * @param {Event} evt
*/ */
defaultMouseDown: function (evt) { defaultMouseDown: function (evt) {
if (!Event.isLeftClick(evt)) return;
this.mouseDragStart = evt.xy.copyOf(); this.mouseDragStart = evt.xy.copyOf();
if (evt.shiftKey && this.mode !="zoombox") { if (evt.shiftKey && this.mode !="zoombox") {
this.switchModeTo("zoombox"); this.switchModeTo("zoombox");
@@ -226,6 +224,7 @@ OpenLayers.Control.MouseToolbar.prototype =
* @param {Event} evt * @param {Event} evt
*/ */
defaultMouseUp: function (evt) { defaultMouseUp: function (evt) {
if (!Event.isLeftClick(evt)) return;
switch (this.mode) { switch (this.mode) {
case "zoombox": case "zoombox":
var start = this.map.getLonLatFromViewPortPx( this.mouseDragStart ); var start = this.map.getLonLatFromViewPortPx( this.mouseDragStart );

View File

@@ -111,6 +111,7 @@ OpenLayers.Control.PanZoom.prototype =
* @param {event} evt * @param {event} evt
*/ */
buttonDown: function (evt) { buttonDown: function (evt) {
if (!Event.isLeftClick(evt)) return;
var slide = this.map.getResolution() * this.slideFactor; var slide = this.map.getResolution() * this.slideFactor;
var center = this.map.getCenter(); var center = this.map.getCenter();

View File

@@ -127,6 +127,7 @@ OpenLayers.Control.PanZoomBar.prototype =
* and sets the zoom level appropriately. * and sets the zoom level appropriately.
*/ */
divClick: function (evt) { divClick: function (evt) {
if (!Event.isLeftClick(evt)) return;
var y = evt.xy.y; var y = evt.xy.y;
var top = Position.page(evt.object)[1]; var top = Position.page(evt.object)[1];
var levels = Math.floor((y - top)/this.zoomStopHeight); var levels = Math.floor((y - top)/this.zoomStopHeight);
@@ -139,6 +140,7 @@ OpenLayers.Control.PanZoomBar.prototype =
* event listener for clicks on the slider * event listener for clicks on the slider
*/ */
zoomBarDown:function(evt) { zoomBarDown:function(evt) {
if (!Event.isLeftClick(evt)) return;
this.map.events.register("mousemove", this, this.passEventToSlider); this.map.events.register("mousemove", this, this.passEventToSlider);
this.map.events.register("mouseup", this, this.passEventToSlider); this.map.events.register("mouseup", this, this.passEventToSlider);
this.mouseDragStart = evt.xy.copyOf(); this.mouseDragStart = evt.xy.copyOf();
@@ -173,6 +175,7 @@ OpenLayers.Control.PanZoomBar.prototype =
* and switch to it. * and switch to it.
*/ */
zoomBarUp:function(evt) { zoomBarUp:function(evt) {
if (!Event.isLeftClick(evt)) return;
if (this.zoomStart) { if (this.zoomStart) {
this.div.style.cursor="default"; this.div.style.cursor="default";
this.map.events.remove("mousemove"); this.map.events.remove("mousemove");

View File

@@ -43,8 +43,15 @@ OpenLayers.Feature.WFS.prototype =
*/ */
processXMLNode: function(xmlNode) { processXMLNode: function(xmlNode) {
//this should be overridden by subclasses //this should be overridden by subclasses
// must return an Object with 'id' and 'lonlat' values set // must return an Object with 'id' and 'lonlat' values set
var point = xmlNode.getElementsByTagName("Point");
var text = point[0].textContent;
var floats = text.split(",");
return {lonlat: new OpenLayers.LonLat(parseFloat(floats[0]),
parseFloat(floats[1])),
id: null};
}, },
/** @final @type String */ /** @final @type String */

View File

@@ -12,7 +12,7 @@ OpenLayers.Layer.WFS.prototype =
Object.extend(new OpenLayers.Layer.Markers(), { Object.extend(new OpenLayers.Layer.Markers(), {
/** @type Object */ /** @type Object */
featureClass: null, featureClass: OpenLayers.Feature.WFS,
/** @final @type hash */ /** @final @type hash */
DEFAULT_PARAMS: { service: "WFS", DEFAULT_PARAMS: { service: "WFS",
@@ -30,7 +30,7 @@ OpenLayers.Layer.WFS.prototype =
* @param {Object} featureClass * @param {Object} featureClass
*/ */
initialize: function(name, url, params, featureClass) { initialize: function(name, url, params, featureClass) {
this.featureClass = featureClass; if (featureClass != null) this.featureClass = featureClass;
var newArguments = new Array(); var newArguments = new Array();
if (arguments.length > 0) { if (arguments.length > 0) {

View File

@@ -545,12 +545,11 @@ OpenLayers.Map.prototype = {
*/ */
zoomToFullExtent: function() { zoomToFullExtent: function() {
var fullExtent = this.getFullExtent(); var fullExtent = this.getFullExtent();
var oldZoom = this.zoom;
this.setCenter( this.setCenter(
new OpenLayers.LonLat((fullExtent.left+fullExtent.right)/2, new OpenLayers.LonLat((fullExtent.left+fullExtent.right)/2,
(fullExtent.bottom+fullExtent.top)/2), (fullExtent.bottom+fullExtent.top)/2),
0 this.getZoomForExtent(fullExtent)
); );
}, },
/** /**

View File

@@ -51,7 +51,7 @@ OpenLayers.Popup.AnchoredBubble.prototype =
var id = this.div.id + "-contentDiv"; var id = this.div.id + "-contentDiv";
this.contentDiv = OpenLayers.Util.createDiv(id, null, contentSize, this.contentDiv = OpenLayers.Util.createDiv(id, null, contentSize,
null, "relative", null, null, "relative", null,
"none"); "hidden");
this.div.appendChild(this.contentDiv); this.div.appendChild(this.contentDiv);
this.setContentHTML(); this.setContentHTML();

View File

@@ -36,7 +36,9 @@ OpenLayers.Tile.Image.prototype =
/** /**
*/ */
draw:function(transparent) { draw:function(transparent) {
if (transparent) { if (false) { // don't actually use the alpha PNG hack right now
// it has a fiercely bad effect on IE6's performance
// if (transparent) {
this.imgDiv = OpenLayers.Util.createAlphaImageDiv(null, this.imgDiv = OpenLayers.Util.createAlphaImageDiv(null,
this.position, this.position,
this.size, this.size,

View File

@@ -79,7 +79,7 @@ OpenLayers.Tile.WFS.prototype =
doc = OpenLayers.parseXMLString(request.responseText); doc = OpenLayers.parseXMLString(request.responseText);
} }
var resultFeatures = OpenLayers.Util.getNodes(doc, "gml:featureMember"); var resultFeatures = doc.getElementsByTagName("featureMember");
//clear old featureList //clear old featureList
this.features = new Array(); this.features = new Array();

View File

@@ -28,12 +28,12 @@
} }
function test_03_Control_PanZoom_control_events (t) { function test_03_Control_PanZoom_control_events (t) {
t.plan( 7 ); t.plan( 7 );
var evt = new Object(); var evt = {which: 1}; // control expects left-click
map = new OpenLayers.Map('map'); map = new OpenLayers.Map('map');
control = new OpenLayers.Control.PanZoom(); control = new OpenLayers.Control.PanZoom();
map.addControl(control, map.addControl(control,
new OpenLayers.Pixel(20,20)); new OpenLayers.Pixel(20,20));
map.setCenter(new OpenLayers.LonLat(0,0), 0); map.setCenter(new OpenLayers.LonLat(0,0), 4);
var res = map.getResolution(); var res = map.getResolution();
control.buttons[0].onmousedown(evt); control.buttons[0].onmousedown(evt);
t.eq( map.getCenter().lat, res*50, "Pan up works correctly" ); t.eq( map.getCenter().lat, res*50, "Pan up works correctly" );
@@ -45,12 +45,12 @@
t.eq( map.getCenter().lat, 0, "Pan down works correctly" ); t.eq( map.getCenter().lat, 0, "Pan down works correctly" );
control.buttons[4].onmousedown(evt); control.buttons[4].onmousedown(evt);
control.buttons[4].onmousedown(evt); control.buttons[4].onmousedown(evt);
t.eq( map.getZoom(), 2, "zoomin workds correctly" ); t.eq( map.getZoom(), 6, "zoomin works correctly" );
control.buttons[6].onmousedown(evt); control.buttons[6].onmousedown(evt);
t.eq( map.getZoom(), 1, "zoomout workds correctly" ); t.eq( map.getZoom(), 5, "zoomout works correctly" );
control.buttons[4].onmousedown(evt); control.buttons[4].onmousedown(evt);
control.buttons[5].onmousedown(evt); control.buttons[5].onmousedown(evt);
t.eq( map.getZoom(), 0, "zoomworld workds correctly" ); t.eq( map.getZoom(), 2, "zoomworld works correctly" );
} }
// --> // -->

View File

@@ -71,7 +71,7 @@
map.zoomTo(5); map.zoomTo(5);
t.eq( map.getZoom(), 5, "map.zoom is correct after calling zoomTo" ); t.eq( map.getZoom(), 5, "map.zoom is correct after calling zoomTo" );
map.zoomToFullExtent(); map.zoomToFullExtent();
t.eq( map.getZoom(), 0, "map.zoom is correct after calling zoomToFullExtent" ); t.eq( map.getZoom(), 2, "map.zoom is correct after calling zoomToFullExtent" );
var lonlat = map.getCenter(); var lonlat = map.getCenter();
var zero = new OpenLayers.LonLat(0, 0); var zero = new OpenLayers.LonLat(0, 0);
t.ok( lonlat.equals(zero), "map center is correct after calling zoomToFullExtent" ); t.ok( lonlat.equals(zero), "map center is correct after calling zoomToFullExtent" );