Add zoomDelta option to MapOptions
This commit is contained in:
@@ -9,8 +9,15 @@ goog.require('ol.interaction.Interaction');
|
||||
/**
|
||||
* @constructor
|
||||
* @extends {ol.interaction.Interaction}
|
||||
* @param {number} delta The zoom delta applied on each double click.
|
||||
*/
|
||||
ol.interaction.DblClickZoom = function() {
|
||||
ol.interaction.DblClickZoom = function(delta) {
|
||||
/**
|
||||
* @private
|
||||
* @type {number}
|
||||
*/
|
||||
this.delta_ = delta;
|
||||
|
||||
goog.base(this);
|
||||
};
|
||||
goog.inherits(ol.interaction.DblClickZoom, ol.interaction.Interaction);
|
||||
@@ -26,7 +33,8 @@ ol.interaction.DblClickZoom.prototype.handleMapBrowserEvent =
|
||||
mapBrowserEvent.isMouseActionButton()) {
|
||||
var map = mapBrowserEvent.map;
|
||||
var anchor = mapBrowserEvent.getCoordinate();
|
||||
var delta = mapBrowserEvent.browserEvent.shiftKey ? -4 : 4;
|
||||
var delta = mapBrowserEvent.browserEvent.shiftKey ?
|
||||
-this.delta_ : this.delta_;
|
||||
map.zoom(delta, anchor);
|
||||
mapBrowserEvent.preventDefault();
|
||||
}
|
||||
|
||||
@@ -75,6 +75,7 @@ ol.DEFAULT_RENDERER_HINTS = [
|
||||
* shiftDragZoom: (boolean|undefined),
|
||||
* userProjection: (ol.Projection|string|undefined),
|
||||
* zoom: (number|undefined),
|
||||
* zoomDelta: (number|undefined),
|
||||
* zoomFactor: (number|undefined)}}
|
||||
*/
|
||||
ol.MapOptionsLiteral;
|
||||
@@ -223,7 +224,9 @@ ol.MapOptions.createInteractions_ = function(mapOptionsLiteral) {
|
||||
var doubleClickZoom = goog.isDef(mapOptionsLiteral.doubleClickZoom) ?
|
||||
mapOptionsLiteral.doubleClickZoom : true;
|
||||
if (doubleClickZoom) {
|
||||
interactions.push(new ol.interaction.DblClickZoom());
|
||||
var zoomDelta = goog.isDef(mapOptionsLiteral.zoomDelta) ?
|
||||
mapOptionsLiteral.zoomDelta : 4;
|
||||
interactions.push(new ol.interaction.DblClickZoom(zoomDelta));
|
||||
}
|
||||
|
||||
var dragPan = goog.isDef(mapOptionsLiteral.dragPan) ?
|
||||
|
||||
Reference in New Issue
Block a user