all files / ol/pointer/ eventsource.js

90.91% Statements 10/11
100% Branches 0/0
75% Functions 3/4
90.91% Lines 10/11
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55                         276×             276×               756×                                     1242×    
goog.provide('ol.pointer.EventSource');
 
goog.require('goog.events.BrowserEvent');
 
 
 
/**
 * @param {ol.pointer.PointerEventHandler} dispatcher
 * @param {!Object.<string, function(goog.events.BrowserEvent)>} mapping
 * @constructor
 */
ol.pointer.EventSource = function(dispatcher, mapping) {
  /**
   * @type {ol.pointer.PointerEventHandler}
   */
  this.dispatcher = dispatcher;
 
  /**
   * @private
   * @const
   * @type {!Object.<string, function(goog.events.BrowserEvent)>}
   */
  this.mapping_ = mapping;
};
 
 
/**
 * List of events supported by this source.
 * @return {Array.<string>} Event names
 */
ol.pointer.EventSource.prototype.getEvents = function() {
  return Object.keys(this.mapping_);
};
 
 
/**
 * Returns a mapping between the supported event types and
 * the handlers that should handle an event.
 * @return {Object.<string, function(goog.events.BrowserEvent)>}
 *         Event/Handler mapping
 */
ol.pointer.EventSource.prototype.getMapping = function() {
  return this.mapping_;
};
 
 
/**
 * Returns the handler that should handle a given event type.
 * @param {string} eventType
 * @return {function(goog.events.BrowserEvent)} Handler
 */
ol.pointer.EventSource.prototype.getHandlerForEvent = function(eventType) {
  return this.mapping_[eventType];
};