app/assets/javascripts/gmapsjs/gmapsjs.js in gmapsjs-0.1.9 vs app/assets/javascripts/gmapsjs/gmapsjs.js in gmapsjs-0.1.10
- old
+ new
@@ -6,10 +6,11 @@
var context_menu_style = 'position:absolute;display:none;min-width:100px;' +
'background:white;list-style:none;padding:8px;box-shadow:2px 2px 6px #ccc';
window.context_menu = {};
this.div = $(options.div)[0];
+ this.controls = [];
this.overlays = [];
this.markers = [];
this.polylines = [];
this.routes = [];
this.polygons = [];
@@ -237,9 +238,44 @@
this.map.setZoom(this.map.getZoom() + value);
};
this.zoomOut = function(value) {
this.map.setZoom(this.map.getZoom() - value);
+ };
+
+ this.createControl = function(options) {
+ options.style.cursor = 'pointer';
+ options.style.fontFamily = 'Arial, sans-serif';
+ options.style.fontSize = '13px';
+ options.style.boxShadow = 'rgba(0, 0, 0, 0.398438) 0px 2px 4px';
+
+ var controlDiv = $('<div></div>');
+ controlDiv.css(options.style);
+ controlDiv.text(options.text);
+
+ var control = controlDiv[0];
+
+ for(var e in options.events) {
+ google.maps.event.addDomListener(control, e, function() {
+ options.events[e].apply(this, [this]);
+ });
+ }
+
+ control.index = 1;
+
+ return control;
+ };
+
+ this.addControl = function(options) {
+ var position = google.maps.ControlPosition[options.position.toUpperCase()];
+
+ delete options.position;
+
+ var control = this.createControl(options);
+ this.controls.push(control);
+ this.map.controls[position].push(control);
+
+ return control;
};
// Markers
this.createMarker = function(options) {
if (options.lat && options.lng) {
\ No newline at end of file