UNPKG

c8y-openlayer

Version:

This module is designed to help integrate Openlayer with Cumulocity IoT

82 lines (69 loc) 2.19 kB
import _ol_ from './index.js'; import _ol_MapEvent_ from './mapevent.js'; /** * @classdesc * Events emitted as map browser events are instances of this type. * See {@link ol.Map} for which events trigger a map browser event. * * @constructor * @extends {ol.MapEvent} * @implements {oli.MapBrowserEvent} * @param {string} type Event type. * @param {ol.PluggableMap} map Map. * @param {Event} browserEvent Browser event. * @param {boolean=} opt_dragging Is the map currently being dragged? * @param {?olx.FrameState=} opt_frameState Frame state. */ var _ol_MapBrowserEvent_ = function(type, map, browserEvent, opt_dragging, opt_frameState) { _ol_MapEvent_.call(this, type, map, opt_frameState); /** * The original browser event. * @const * @type {Event} * @api */ this.originalEvent = browserEvent; /** * The map pixel relative to the viewport corresponding to the original browser event. * @type {ol.Pixel} * @api */ this.pixel = map.getEventPixel(browserEvent); /** * The coordinate in view projection corresponding to the original browser event. * @type {ol.Coordinate} * @api */ this.coordinate = map.getCoordinateFromPixel(this.pixel); /** * Indicates if the map is currently being dragged. Only set for * `POINTERDRAG` and `POINTERMOVE` events. Default is `false`. * * @type {boolean} * @api */ this.dragging = opt_dragging !== undefined ? opt_dragging : false; }; _ol_.inherits(_ol_MapBrowserEvent_, _ol_MapEvent_); /** * Prevents the default browser action. * @see https://developer.mozilla.org/en-US/docs/Web/API/event.preventDefault * @override * @api */ _ol_MapBrowserEvent_.prototype.preventDefault = function() { _ol_MapEvent_.prototype.preventDefault.call(this); this.originalEvent.preventDefault(); }; /** * Prevents further propagation of the current event. * @see https://developer.mozilla.org/en-US/docs/Web/API/event.stopPropagation * @override * @api */ _ol_MapBrowserEvent_.prototype.stopPropagation = function() { _ol_MapEvent_.prototype.stopPropagation.call(this); this.originalEvent.stopPropagation(); }; export default _ol_MapBrowserEvent_;