[OpenLayers-Dev] Custom Control Box Retain on Mouse Up
Moiz Bhukhiya
moiz.bhukhiya at gmail.com
Mon Jul 26 15:41:13 EDT 2010
Hello there,
I am trying to use custom control to draw a rectangular box and get the
dimension after drawing a box on the map. My problem is I want to retain the
box on mouse up instead of the box disappearing. Right now, it displays the
alert box when I mouse up.
Here is what I am doing now:
<code>
var control = new OpenLayers.Control();
OpenLayers.Util.extend(control, {
draw: function () {
// this Handler.Box will intercept the
shift-mousedown
// before Control.MouseDefault gets to see it
this.box = new OpenLayers.Handler.Box( control,
{"done": this.notice},
{keyMask: OpenLayers.Handler.MOD_SHIFT});
this.box.activate();
},
notice: function (bounds) {
var ll = map.getLonLatFromPixel(new
OpenLayers.Pixel(bounds.left, bounds.bottom));
var ur = map.getLonLatFromPixel(new
OpenLayers.Pixel(bounds.right, bounds.top));
alert(ll.lon.toFixed(4) + ", " +
ll.lat.toFixed(4) + ", " +
ur.lon.toFixed(4) + ", " +
ur.lat.toFixed(4));
}
});
map.addControl(control);
</code>
What I need is when I press shift key I should be able to draw a box on the
map and then resize it if required and then click a button to get the
dimensions(alert box).
I appreciate any help,
Thanks a lot!
Moiz
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/openlayers-dev/attachments/20100726/46b8c2e6/attachment.html
More information about the Dev
mailing list