From 9d3c4ecb1c85591379b8b3b45b56e9a0ff6adecf Mon Sep 17 00:00:00 2001 From: Tim Schaub Date: Tue, 3 Aug 2010 23:37:31 +0000 Subject: [PATCH] Firing the beforefeaturesremoved event from the vector layer. r=ahocevar (closes #2770) git-svn-id: http://svn.openlayers.org/trunk/openlayers@10575 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf --- lib/OpenLayers/Layer/Vector.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/OpenLayers/Layer/Vector.js b/lib/OpenLayers/Layer/Vector.js index 8a3d826d86..0cd320eeec 100644 --- a/lib/OpenLayers/Layer/Vector.js +++ b/lib/OpenLayers/Layer/Vector.js @@ -54,6 +54,9 @@ OpenLayers.Layer.Vector = OpenLayers.Class(OpenLayers.Layer, { * beforefeatureremoved - Triggered before a feature is removed. Listeners * will receive an object with a *feature* property referencing the * feature to be removed. + * beforefeaturesremoved - Triggered before multiple features are removed. + * Listeners will receive an object with a *features* property + * referencing the features to be removed. * featureremoved - Triggerd after a feature is removed. The event * object passed to listeners will have a *feature* property with a * reference to the removed feature. @@ -97,8 +100,8 @@ OpenLayers.Layer.Vector = OpenLayers.Class(OpenLayers.Layer, { * for a new set of features. */ EVENT_TYPES: ["beforefeatureadded", "beforefeaturesadded", - "featureadded", "featuresadded", - "beforefeatureremoved", "featureremoved", "featuresremoved", + "featureadded", "featuresadded", "beforefeatureremoved", + "beforefeaturesremoved", "featureremoved", "featuresremoved", "beforefeatureselected", "featureselected", "featureunselected", "beforefeaturemodified", "featuremodified", "afterfeaturemodified", "vertexmodified", "sketchstarted", "sketchmodified", @@ -621,6 +624,12 @@ OpenLayers.Layer.Vector = OpenLayers.Class(OpenLayers.Layer, { } var notify = !options || !options.silent; + + if (notify) { + this.events.triggerEvent( + "beforefeaturesremoved", {features: features} + ); + } for (var i = features.length - 1; i >= 0; i--) { // We remain locked so long as we're not at 0