From 57705aac8586291055e80e77b7a2f44acd4660a4 Mon Sep 17 00:00:00 2001 From: Brandon Bergren <bdragon@rtk0.net> Date: Wed, 26 Jan 2011 21:38:48 +0000 Subject: [PATCH] Add support for extent widget. --- js/gmap.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/js/gmap.js b/js/gmap.js index c193b5f..045ec5c 100755 --- a/js/gmap.js +++ b/js/gmap.js @@ -441,6 +441,27 @@ Drupal.gmap.addHandler('latlon', function (elem) { }); }); +//////////////////////////////////////// +// Extent widget // +//////////////////////////////////////// +Drupal.gmap.addHandler('extent', function (elem) { + var obj = this; + // Respond to incoming extent changes. + var binding = obj.bind("move", function () { + var b = obj.map.getBounds(); + elem.value = '' + b.getSouthWest().lng() + ',' + b.getSouthWest().lat() + ',' + b.getNorthEast().lng() + ',' + b.getNorthEast().lat(); + }); + // Send out outgoing extent changes. + jQuery(elem).change(function () { + var t = this.value.split(','); + var b = new GLatLngBounds(new GLatLng(Number(t[1]), Number(t[0])), new GLatLng(Number(t[3]), Number(t[2]))); + obj.vars.latitude = b.getCenter().lat(); + obj.vars.longitude = b.getCenter().lng(); + obj.vars.zoom = obj.map.getBoundsZoomLevel(b); + obj.map.setCenter(new GLatLng(obj.vars.latitude, obj.vars.longitude), obj.vars.zoom); + }); +}); + //////////////////////////////////////// // Maptype widget // //////////////////////////////////////// -- GitLab