Also trigger beforefeaturemodified event in non-standalone mode

d2a32d5 accidently changed the number of assertions in the
test_selectFeature function, so the change in behavior that no
beforefeaturemodified event is called any more in non-standalone mode got
unnoticed: Before unhacking ModifyFeature, the SelectFeature control
called the beforeSelectFeature method directly. Now, without a built-in
SelectFeature control, we need to call it from the selectFeature method in
both standalone and non-standalone mode.
This commit is contained in:
ahocevar
2013-04-09 23:16:30 +02:00
parent e1dea2d8e1
commit e5dc583d52
2 changed files with 5 additions and 5 deletions

View File

@@ -335,9 +335,9 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
/**
* APIMethod: selectFeature
* Select a feature for modification in standalone mode. In non-standalone
* mode, this method is called when the select feature control selects a
* feature. Register a listener to the beforefeaturemodified event and
* return false to prevent feature modification.
* mode, this method is called when a feature is selected by clicking.
* Register a listener to the beforefeaturemodified event and return false
* to prevent feature modification.
*
* Parameters:
* feature - {<OpenLayers.Feature.Vector>} the selected feature.
@@ -347,7 +347,7 @@ OpenLayers.Control.ModifyFeature = OpenLayers.Class(OpenLayers.Control, {
feature.geometry.CLASS_NAME) == -1) {
return;
}
if (!this.standalone || this.beforeSelectFeature(feature) !== false) {
if (this.beforeSelectFeature(feature) !== false) {
if (this.feature) {
this.unselectFeature(this.feature);
}