Export a getKey method on ol.ObjectEvent
This commit is contained in:
@@ -26,8 +26,8 @@ var track = new ol.dom.Input(document.getElementById('track'));
|
|||||||
track.bindTo('checked', deviceOrientation, 'tracking');
|
track.bindTo('checked', deviceOrientation, 'tracking');
|
||||||
|
|
||||||
deviceOrientation.on('propertychange', function(event) {
|
deviceOrientation.on('propertychange', function(event) {
|
||||||
// event.key is the changed property name
|
// event.getKey() is the changed property name
|
||||||
var key = event.key;
|
var key = event.getKey();
|
||||||
var element = document.getElementById(key);
|
var element = document.getElementById(key);
|
||||||
if (element) {
|
if (element) {
|
||||||
element.innerHTML = deviceOrientation.get(key);
|
element.innerHTML = deviceOrientation.get(key);
|
||||||
|
|||||||
@@ -7,3 +7,6 @@
|
|||||||
@exportProperty ol.Object.prototype.setValues
|
@exportProperty ol.Object.prototype.setValues
|
||||||
@exportProperty ol.Object.prototype.unbind
|
@exportProperty ol.Object.prototype.unbind
|
||||||
@exportProperty ol.Object.prototype.unbindAll
|
@exportProperty ol.Object.prototype.unbindAll
|
||||||
|
|
||||||
|
@exportSymbol ol.ObjectEvent
|
||||||
|
@exportProperty ol.ObjectEvent.prototype.getKey
|
||||||
|
|||||||
+12
-2
@@ -41,13 +41,23 @@ ol.ObjectEvent = function(type, key) {
|
|||||||
/**
|
/**
|
||||||
* The name of the property whose value is changing.
|
* The name of the property whose value is changing.
|
||||||
* @type {string}
|
* @type {string}
|
||||||
|
* @private
|
||||||
*/
|
*/
|
||||||
this.key = key;
|
this.key_ = key;
|
||||||
|
|
||||||
};
|
};
|
||||||
goog.inherits(ol.ObjectEvent, goog.events.Event);
|
goog.inherits(ol.ObjectEvent, goog.events.Event);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the name of the property associated with this event.
|
||||||
|
* @return {string} Object property name.
|
||||||
|
*/
|
||||||
|
ol.ObjectEvent.prototype.getKey = function() {
|
||||||
|
return this.key_;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @constructor
|
* @constructor
|
||||||
@@ -286,7 +296,7 @@ ol.Object.prototype.createBeforeChangeListener_ = function(key, targetKey) {
|
|||||||
* @this {ol.Object}
|
* @this {ol.Object}
|
||||||
*/
|
*/
|
||||||
return function(event) {
|
return function(event) {
|
||||||
if (event.key === targetKey) {
|
if (event.getKey() === targetKey) {
|
||||||
this.dispatchEvent(
|
this.dispatchEvent(
|
||||||
new ol.ObjectEvent(ol.ObjectEventType.BEFOREPROPERTYCHANGE, key));
|
new ol.ObjectEvent(ol.ObjectEventType.BEFOREPROPERTYCHANGE, key));
|
||||||
}
|
}
|
||||||
|
|||||||
+12
-12
@@ -125,7 +125,7 @@ describe('ol.Object', function() {
|
|||||||
var args = listener2.firstCall.args;
|
var args = listener2.firstCall.args;
|
||||||
expect(args).to.have.length(1);
|
expect(args).to.have.length(1);
|
||||||
var event = args[0];
|
var event = args[0];
|
||||||
expect(event.key).to.be('k');
|
expect(event.getKey()).to.be('k');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('dispatches events to bound objects', function() {
|
it('dispatches events to bound objects', function() {
|
||||||
@@ -165,7 +165,7 @@ describe('ol.Object', function() {
|
|||||||
var args = listener2.firstCall.args;
|
var args = listener2.firstCall.args;
|
||||||
expect(args).to.have.length(1);
|
expect(args).to.have.length(1);
|
||||||
var event = args[0];
|
var event = args[0];
|
||||||
expect(event.key).to.be('k');
|
expect(event.getKey()).to.be('k');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('dispatches beforechange events to object', function() {
|
it('dispatches beforechange events to object', function() {
|
||||||
@@ -173,7 +173,7 @@ describe('ol.Object', function() {
|
|||||||
|
|
||||||
var oldValue;
|
var oldValue;
|
||||||
var beforeListener = sinon.spy(function(event) {
|
var beforeListener = sinon.spy(function(event) {
|
||||||
oldValue = o2.get(event.key);
|
oldValue = o2.get(event.getKey());
|
||||||
});
|
});
|
||||||
o.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
o.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
||||||
|
|
||||||
@@ -201,7 +201,7 @@ describe('ol.Object', function() {
|
|||||||
var args = listener2.firstCall.args;
|
var args = listener2.firstCall.args;
|
||||||
expect(args).to.have.length(1);
|
expect(args).to.have.length(1);
|
||||||
var event = args[0];
|
var event = args[0];
|
||||||
expect(event.key).to.be('k');
|
expect(event.getKey()).to.be('k');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('dispatches beforechange before changing bound objects', function() {
|
it('dispatches beforechange before changing bound objects', function() {
|
||||||
@@ -209,7 +209,7 @@ describe('ol.Object', function() {
|
|||||||
|
|
||||||
var oldValue;
|
var oldValue;
|
||||||
var beforeListener = sinon.spy(function(event) {
|
var beforeListener = sinon.spy(function(event) {
|
||||||
oldValue = o2.get(event.key);
|
oldValue = o2.get(event.getKey());
|
||||||
});
|
});
|
||||||
o.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
o.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
||||||
|
|
||||||
@@ -218,7 +218,7 @@ describe('ol.Object', function() {
|
|||||||
var args = beforeListener.firstCall.args;
|
var args = beforeListener.firstCall.args;
|
||||||
expect(args).to.have.length(1);
|
expect(args).to.have.length(1);
|
||||||
var event = args[0];
|
var event = args[0];
|
||||||
expect(event.key).to.be('k');
|
expect(event.getKey()).to.be('k');
|
||||||
|
|
||||||
expect(oldValue).to.be(1);
|
expect(oldValue).to.be(1);
|
||||||
});
|
});
|
||||||
@@ -232,7 +232,7 @@ describe('ol.Object', function() {
|
|||||||
|
|
||||||
var oldValue;
|
var oldValue;
|
||||||
var beforeListener = sinon.spy(function(event) {
|
var beforeListener = sinon.spy(function(event) {
|
||||||
oldValue = object.get(event.key);
|
oldValue = object.get(event.getKey());
|
||||||
});
|
});
|
||||||
object.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
object.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
||||||
|
|
||||||
@@ -241,7 +241,7 @@ describe('ol.Object', function() {
|
|||||||
var args = beforeListener.firstCall.args;
|
var args = beforeListener.firstCall.args;
|
||||||
expect(args).to.have.length(1);
|
expect(args).to.have.length(1);
|
||||||
var event = args[0];
|
var event = args[0];
|
||||||
expect(event.key).to.be('foo');
|
expect(event.getKey()).to.be('foo');
|
||||||
|
|
||||||
expect(oldValue).to.be('original value');
|
expect(oldValue).to.be('original value');
|
||||||
expect(object.get('foo')).to.be('new value');
|
expect(object.get('foo')).to.be('new value');
|
||||||
@@ -256,7 +256,7 @@ describe('ol.Object', function() {
|
|||||||
|
|
||||||
var oldValue;
|
var oldValue;
|
||||||
var beforeListener = sinon.spy(function(event) {
|
var beforeListener = sinon.spy(function(event) {
|
||||||
oldValue = object.get(event.key);
|
oldValue = object.get(event.getKey());
|
||||||
});
|
});
|
||||||
object.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
object.on(ol.ObjectEventType.BEFOREPROPERTYCHANGE, beforeListener);
|
||||||
|
|
||||||
@@ -265,7 +265,7 @@ describe('ol.Object', function() {
|
|||||||
var args = beforeListener.firstCall.args;
|
var args = beforeListener.firstCall.args;
|
||||||
expect(args).to.have.length(1);
|
expect(args).to.have.length(1);
|
||||||
var event = args[0];
|
var event = args[0];
|
||||||
expect(event.key).to.be('bar');
|
expect(event.getKey()).to.be('bar');
|
||||||
|
|
||||||
expect(oldValue).to.be('original value');
|
expect(oldValue).to.be('original value');
|
||||||
expect(object.get('bar')).to.be('new value');
|
expect(object.get('bar')).to.be('new value');
|
||||||
@@ -365,7 +365,7 @@ describe('ol.Object', function() {
|
|||||||
expect(listener.calledOnce).to.be(true);
|
expect(listener.calledOnce).to.be(true);
|
||||||
var call = listener.firstCall;
|
var call = listener.firstCall;
|
||||||
expect(call.args).to.have.length(1);
|
expect(call.args).to.have.length(1);
|
||||||
expect(call.args[0].key).to.be('foo');
|
expect(call.args[0].getKey()).to.be('foo');
|
||||||
|
|
||||||
object.unbind('foo');
|
object.unbind('foo');
|
||||||
target.set('foo', 'another new value');
|
target.set('foo', 'another new value');
|
||||||
@@ -400,7 +400,7 @@ describe('ol.Object', function() {
|
|||||||
expect(listener.callCount).to.be(3);
|
expect(listener.callCount).to.be(3);
|
||||||
var lastCall = listener.getCall(2);
|
var lastCall = listener.getCall(2);
|
||||||
expect(lastCall.args).to.have.length(1);
|
expect(lastCall.args).to.have.length(1);
|
||||||
expect(lastCall.args[0].key).to.be('bar');
|
expect(lastCall.args[0].getKey()).to.be('bar');
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user