add a mouse wheel handler

This commit is contained in:
Éric Lemoine
2012-07-09 09:27:36 +02:00
parent 34a450a009
commit 2c61e16b55
2 changed files with 38 additions and 0 deletions

View File

@@ -8,6 +8,7 @@ goog.require('ol.control.Zoom');
goog.require('ol.event.Events');
goog.require('ol.event.Scroll');
goog.require('ol.handler.Drag');
goog.require('ol.handler.MouseWheel');
goog.require("ol.map");
goog.require("ol.loc");
goog.require("ol.feature");

View File

@@ -0,0 +1,37 @@
/**
* @fileoverview Map Mouse Wheel Handler.
*
* Provides a class for listening to mousewheel events on a DOM element
* and re-dispatching to a map instance.
*/
goog.provide('ol.handler.MouseWheel');
goog.require('goog.Disposable');
goog.require('goog.events.MouseWheelHandler');
/**
* @constructor
* @extends {goog.Disposable}
* @param {ol.Map} map The map instance.
* @param {Element} elt The element we listen to mousewheel on.
*/
ol.handler.MouseWheel = function(map, elt) {
goog.base(this);
var handler = new goog.events.MouseWheelHandler(elt);
this.registerDisposable(handler);
var handleMouseWheel = function(e) {
e.position = goog.style.getRelativePosition(e, elt);
e.type = 'mousewheel';
goog.events.dispatchEvent(map, e);
};
goog.events.listen(handler,
goog.events.MouseWheelHandler.EventType.MOUSEWHEEL,
handleMouseWheel);
};
goog.inherits(ol.handler.MouseWheel, goog.Disposable);