Replace goog.events.Event/EventTarget system with our own

This also removes goog.events.listen, goog.events.unlisten,
goog.events.unlistenByKey and goog.events.BrowserEvent.
This commit is contained in:
Andreas Hocevar
2016-01-29 16:29:46 +01:00
parent d87482e415
commit 3f2d79b7fe
110 changed files with 1143 additions and 733 deletions

View File

@@ -1,7 +1,7 @@
goog.provide('ol.layer.Heatmap');
goog.require('goog.asserts');
goog.require('goog.events');
goog.require('ol.events');
goog.require('goog.object');
goog.require('ol');
goog.require('ol.Object');
@@ -72,7 +72,7 @@ ol.layer.Heatmap = function(opt_options) {
*/
this.styleCache_ = null;
goog.events.listen(this,
ol.events.listen(this,
ol.Object.getChangeEventType(ol.layer.HeatmapLayerProperty.GRADIENT),
this.handleGradientChanged_, false, this);
@@ -83,7 +83,7 @@ ol.layer.Heatmap = function(opt_options) {
this.setRadius(options.radius !== undefined ? options.radius : 8);
goog.events.listen(this, [
ol.events.listen(this, [
ol.Object.getChangeEventType(ol.layer.HeatmapLayerProperty.BLUR),
ol.Object.getChangeEventType(ol.layer.HeatmapLayerProperty.RADIUS)
], this.handleStyleChanged_, false, this);
@@ -129,7 +129,7 @@ ol.layer.Heatmap = function(opt_options) {
// The render order is not relevant for a heatmap representation.
this.setRenderOrder(null);
goog.events.listen(this, ol.render.EventType.RENDER,
ol.events.listen(this, ol.render.EventType.RENDER,
this.handleRender_, false, this);
};

View File

@@ -1,7 +1,7 @@
goog.provide('ol.layer.Layer');
goog.require('goog.events');
goog.require('goog.events.EventType');
goog.require('ol.events');
goog.require('ol.events.EventType');
goog.require('goog.object');
goog.require('ol');
goog.require('ol.Object');
@@ -41,19 +41,19 @@ ol.layer.Layer = function(options) {
/**
* @private
* @type {goog.events.Key}
* @type {ol.events.Key}
*/
this.mapPrecomposeKey_ = null;
/**
* @private
* @type {goog.events.Key}
* @type {ol.events.Key}
*/
this.mapRenderKey_ = null;
/**
* @private
* @type {goog.events.Key}
* @type {ol.events.Key}
*/
this.sourceChangeKey_ = null;
@@ -61,7 +61,7 @@ ol.layer.Layer = function(options) {
this.setMap(options.map);
}
goog.events.listen(this,
ol.events.listen(this,
ol.Object.getChangeEventType(ol.layer.LayerProperty.SOURCE),
this.handleSourcePropertyChange_, false, this);
@@ -139,13 +139,13 @@ ol.layer.Layer.prototype.handleSourceChange_ = function() {
*/
ol.layer.Layer.prototype.handleSourcePropertyChange_ = function() {
if (this.sourceChangeKey_) {
goog.events.unlistenByKey(this.sourceChangeKey_);
ol.events.unlistenByKey(this.sourceChangeKey_);
this.sourceChangeKey_ = null;
}
var source = this.getSource();
if (source) {
this.sourceChangeKey_ = goog.events.listen(source,
goog.events.EventType.CHANGE, this.handleSourceChange_, false, this);
this.sourceChangeKey_ = ol.events.listen(source,
ol.events.EventType.CHANGE, this.handleSourceChange_, false, this);
}
this.changed();
};
@@ -164,15 +164,15 @@ ol.layer.Layer.prototype.handleSourcePropertyChange_ = function() {
* @api
*/
ol.layer.Layer.prototype.setMap = function(map) {
goog.events.unlistenByKey(this.mapPrecomposeKey_);
ol.events.unlistenByKey(this.mapPrecomposeKey_);
this.mapPrecomposeKey_ = null;
if (!map) {
this.changed();
}
goog.events.unlistenByKey(this.mapRenderKey_);
ol.events.unlistenByKey(this.mapRenderKey_);
this.mapRenderKey_ = null;
if (map) {
this.mapPrecomposeKey_ = goog.events.listen(
this.mapPrecomposeKey_ = ol.events.listen(
map, ol.render.EventType.PRECOMPOSE, function(evt) {
var layerState = this.getLayerState();
layerState.managed = false;
@@ -180,8 +180,8 @@ ol.layer.Layer.prototype.setMap = function(map) {
evt.frameState.layerStatesArray.push(layerState);
evt.frameState.layerStates[goog.getUid(this)] = layerState;
}, false, this);
this.mapRenderKey_ = goog.events.listen(
this, goog.events.EventType.CHANGE, map.render, false, map);
this.mapRenderKey_ = ol.events.listen(
this, ol.events.EventType.CHANGE, map.render, false, map);
this.changed();
}
};

View File

@@ -1,8 +1,8 @@
goog.provide('ol.layer.Group');
goog.require('goog.asserts');
goog.require('goog.events');
goog.require('goog.events.EventType');
goog.require('ol.events');
goog.require('ol.events.EventType');
goog.require('goog.object');
goog.require('ol.Collection');
goog.require('ol.CollectionEvent');
@@ -46,17 +46,17 @@ ol.layer.Group = function(opt_options) {
/**
* @private
* @type {Array.<goog.events.Key>}
* @type {Array.<ol.events.Key>}
*/
this.layersListenerKeys_ = [];
/**
* @private
* @type {Object.<string, Array.<goog.events.Key>>}
* @type {Object.<string, Array.<ol.events.Key>>}
*/
this.listenerKeys_ = {};
goog.events.listen(this,
ol.events.listen(this,
ol.Object.getChangeEventType(ol.layer.GroupProperty.LAYERS),
this.handleLayersChanged_, false, this);
@@ -89,22 +89,22 @@ ol.layer.Group.prototype.handleLayerChange_ = function() {
/**
* @param {goog.events.Event} event Event.
* @param {ol.events.Event} event Event.
* @private
*/
ol.layer.Group.prototype.handleLayersChanged_ = function(event) {
this.layersListenerKeys_.forEach(goog.events.unlistenByKey);
this.layersListenerKeys_.forEach(ol.events.unlistenByKey);
this.layersListenerKeys_.length = 0;
var layers = this.getLayers();
this.layersListenerKeys_.push(
goog.events.listen(layers, ol.CollectionEventType.ADD,
ol.events.listen(layers, ol.CollectionEventType.ADD,
this.handleLayersAdd_, false, this),
goog.events.listen(layers, ol.CollectionEventType.REMOVE,
ol.events.listen(layers, ol.CollectionEventType.REMOVE,
this.handleLayersRemove_, false, this));
goog.object.forEach(this.listenerKeys_, function(keys) {
keys.forEach(goog.events.unlistenByKey);
keys.forEach(ol.events.unlistenByKey);
});
goog.object.clear(this.listenerKeys_);
@@ -113,9 +113,9 @@ ol.layer.Group.prototype.handleLayersChanged_ = function(event) {
for (i = 0, ii = layersArray.length; i < ii; i++) {
layer = layersArray[i];
this.listenerKeys_[goog.getUid(layer).toString()] = [
goog.events.listen(layer, ol.ObjectEventType.PROPERTYCHANGE,
ol.events.listen(layer, ol.ObjectEventType.PROPERTYCHANGE,
this.handleLayerChange_, false, this),
goog.events.listen(layer, goog.events.EventType.CHANGE,
ol.events.listen(layer, ol.events.EventType.CHANGE,
this.handleLayerChange_, false, this)
];
}
@@ -134,9 +134,9 @@ ol.layer.Group.prototype.handleLayersAdd_ = function(collectionEvent) {
goog.asserts.assert(!(key in this.listenerKeys_),
'listeners already registered');
this.listenerKeys_[key] = [
goog.events.listen(layer, ol.ObjectEventType.PROPERTYCHANGE,
ol.events.listen(layer, ol.ObjectEventType.PROPERTYCHANGE,
this.handleLayerChange_, false, this),
goog.events.listen(layer, goog.events.EventType.CHANGE,
ol.events.listen(layer, ol.events.EventType.CHANGE,
this.handleLayerChange_, false, this)
];
this.changed();
@@ -151,7 +151,7 @@ ol.layer.Group.prototype.handleLayersRemove_ = function(collectionEvent) {
var layer = /** @type {ol.layer.Base} */ (collectionEvent.element);
var key = goog.getUid(layer).toString();
goog.asserts.assert(key in this.listenerKeys_, 'no listeners to unregister');
this.listenerKeys_[key].forEach(goog.events.unlistenByKey);
this.listenerKeys_[key].forEach(ol.events.unlistenByKey);
delete this.listenerKeys_[key];
this.changed();
};