do not reuse event objects to avoid incorrect event types. r=bartvde (closes #3280)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11958 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
@@ -232,6 +232,9 @@ OpenLayers.Control.TransformFeature = OpenLayers.Class(OpenLayers.Control, {
|
||||
this.dragControl.deactivate();
|
||||
deactivated = true;
|
||||
}
|
||||
if (deactivated) {
|
||||
this.unsetFeature();
|
||||
}
|
||||
return deactivated;
|
||||
},
|
||||
|
||||
@@ -265,13 +268,15 @@ OpenLayers.Control.TransformFeature = OpenLayers.Class(OpenLayers.Control, {
|
||||
scale: 1,
|
||||
ratio: 1
|
||||
});
|
||||
var evt = {feature: feature};
|
||||
|
||||
|
||||
var oldRotation = this.rotation;
|
||||
var oldCenter = this.center;
|
||||
OpenLayers.Util.extend(this, initialParams);
|
||||
|
||||
if(this.events.triggerEvent("beforesetfeature", evt) === false) {
|
||||
var cont = this.events.triggerEvent("beforesetfeature",
|
||||
{feature: feature}
|
||||
);
|
||||
if (cont === false) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -303,7 +308,23 @@ OpenLayers.Control.TransformFeature = OpenLayers.Class(OpenLayers.Control, {
|
||||
|
||||
delete this._setfeature;
|
||||
|
||||
this.events.triggerEvent("setfeature", evt);
|
||||
this.events.triggerEvent("setfeature", {feature: feature});
|
||||
},
|
||||
|
||||
/**
|
||||
* APIMethod: unsetFeature
|
||||
* Remove the transformation box off any feature.
|
||||
* If the control is active, it will be deactivated first.
|
||||
*/
|
||||
unsetFeature: function() {
|
||||
if (this.active) {
|
||||
this.deactivate();
|
||||
} else {
|
||||
this.feature = null;
|
||||
this.rotation = 0;
|
||||
this.scale = 1;
|
||||
this.ratio = 1;
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user