Make ol.Object#listeners_ a private renameable property
This commit is contained in:
+9
-22
@@ -103,14 +103,6 @@ ol.ObjectAccessor.prototype.transform = function(from, to) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @enum {string}
|
|
||||||
*/
|
|
||||||
ol.ObjectProperty = {
|
|
||||||
BINDINGS: 'ol_bindings_'
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base class implementing KVO (Key Value Observing).
|
* Base class implementing KVO (Key Value Observing).
|
||||||
@@ -141,6 +133,12 @@ ol.Object = function(opt_values) {
|
|||||||
*/
|
*/
|
||||||
this.beforeChangeListeners_ = {};
|
this.beforeChangeListeners_ = {};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @private
|
||||||
|
* @type {Object.<string, goog.events.Key>}
|
||||||
|
*/
|
||||||
|
this.listeners_ = {};
|
||||||
|
|
||||||
if (goog.isDef(opt_values)) {
|
if (goog.isDef(opt_values)) {
|
||||||
this.setValues(opt_values);
|
this.setValues(opt_values);
|
||||||
}
|
}
|
||||||
@@ -200,16 +198,6 @@ ol.Object.getGetterName = function(key) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param {ol.Object} obj Object.
|
|
||||||
* @return {Object.<string, goog.events.Key>} Listeners.
|
|
||||||
*/
|
|
||||||
ol.Object.getListeners = function(obj) {
|
|
||||||
return obj[ol.ObjectProperty.BINDINGS] ||
|
|
||||||
(obj[ol.ObjectProperty.BINDINGS] = {});
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {string} key String.
|
* @param {string} key String.
|
||||||
* @return {string} Setter name.
|
* @return {string} Setter name.
|
||||||
@@ -256,8 +244,7 @@ ol.Object.prototype.bindTo = function(key, target, opt_targetKey) {
|
|||||||
|
|
||||||
// listen for change:targetkey events
|
// listen for change:targetkey events
|
||||||
var eventType = ol.Object.getChangeEventType(targetKey);
|
var eventType = ol.Object.getChangeEventType(targetKey);
|
||||||
var listeners = ol.Object.getListeners(this);
|
this.listeners_[key] = goog.events.listen(target, eventType, function() {
|
||||||
listeners[key] = goog.events.listen(target, eventType, function() {
|
|
||||||
this.notifyInternal_(key);
|
this.notifyInternal_(key);
|
||||||
}, undefined, this);
|
}, undefined, this);
|
||||||
|
|
||||||
@@ -459,7 +446,7 @@ ol.Object.prototype.setValues = function(values) {
|
|||||||
* @todo stability experimental
|
* @todo stability experimental
|
||||||
*/
|
*/
|
||||||
ol.Object.prototype.unbind = function(key) {
|
ol.Object.prototype.unbind = function(key) {
|
||||||
var listeners = ol.Object.getListeners(this);
|
var listeners = this.listeners_;
|
||||||
var listener = listeners[key];
|
var listener = listeners[key];
|
||||||
if (listener) {
|
if (listener) {
|
||||||
delete listeners[key];
|
delete listeners[key];
|
||||||
@@ -483,7 +470,7 @@ ol.Object.prototype.unbind = function(key) {
|
|||||||
* @todo stability experimental
|
* @todo stability experimental
|
||||||
*/
|
*/
|
||||||
ol.Object.prototype.unbindAll = function() {
|
ol.Object.prototype.unbindAll = function() {
|
||||||
for (var key in ol.Object.getListeners(this)) {
|
for (var key in this.listeners_) {
|
||||||
this.unbind(key);
|
this.unbind(key);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user