diff --git a/examples/controls.html b/examples/controls.html index 076b00740e..07d88e6265 100644 --- a/examples/controls.html +++ b/examples/controls.html @@ -13,7 +13,7 @@ function init(){ map = new OpenLayers.Map('map', { controls: [] }); - map.addControl(new OpenLayers.Control.PanZoomBar()); + map.addControl(new OpenLayers.Control.PanZoomBar({zoomWorldIcon:true})); map.addControl(new OpenLayers.Control.MouseToolbar()); map.addControl(new OpenLayers.Control.LayerSwitcher({'ascending':false})); map.addControl(new OpenLayers.Control.Permalink()); diff --git a/lib/OpenLayers/Control/PanZoomBar.js b/lib/OpenLayers/Control/PanZoomBar.js index ba4d2ccf3c..8ea38971dd 100644 --- a/lib/OpenLayers/Control/PanZoomBar.js +++ b/lib/OpenLayers/Control/PanZoomBar.js @@ -47,6 +47,12 @@ OpenLayers.Control.PanZoomBar = OpenLayers.Class(OpenLayers.Control.PanZoom, { */ divEvents: null, + /** + * Property: zoomWorldIcon + * {Boolean} + */ + zoomWorldIcon: false, + /** * Constructor: */ @@ -115,11 +121,21 @@ OpenLayers.Control.PanZoomBar = OpenLayers.Class(OpenLayers.Control.PanZoom, { var sz = new OpenLayers.Size(18,18); var centered = new OpenLayers.Pixel(px.x+sz.w/2, px.y); + var wposition = sz.w; + + if (this.zoomWorldIcon) { + centered = new OpenLayers.Pixel(px.x+sz.w, px.y); + } this._addButton("panup", "north-mini.png", centered, sz); px.y = centered.y+sz.h; this._addButton("panleft", "west-mini.png", px, sz); - this._addButton("panright", "east-mini.png", px.add(sz.w, 0), sz); + if (this.zoomWorldIcon) { + this._addButton("zoomworld", "zoom-world-mini.png", px.add(sz.w, 0), sz); + + wposition *= 2; + } + this._addButton("panright", "east-mini.png", px.add(wposition, 0), sz); this._addButton("pandown", "south-mini.png", centered.add(0, sz.h*2), sz); this._addButton("zoomin", "zoom-plus-mini.png", centered.add(0, sz.h*3+5), sz); centered = this._addZoomBar(centered.add(0, sz.h*4 + 5));