Adding a featureadded event to the draw feature control event types. First tests ever for the draw feature control. Thanks sbenthall for the patch. r=me (closes #1508)

git-svn-id: http://svn.openlayers.org/trunk/openlayers@7601 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
Tim Schaub
2008-07-30 03:41:22 +00:00
parent b837fea7a2
commit 309877a48c
3 changed files with 55 additions and 0 deletions

View File

@@ -29,6 +29,14 @@ OpenLayers.Control.DrawFeature = OpenLayers.Class(OpenLayers.Control, {
*/
callbacks: null,
/**
* Constant: EVENT_TYPES
*
* Supported event types:
* - *featureadded* Triggered when a feature is added
*/
EVENT_TYPES: ["featureadded"],
/**
* APIProperty: featureAdded
* {Function} Called after each feature is added
@@ -50,6 +58,13 @@ OpenLayers.Control.DrawFeature = OpenLayers.Class(OpenLayers.Control, {
* options - {Object}
*/
initialize: function(layer, handler, options) {
// concatenate events specific to vector with those from the base
this.EVENT_TYPES =
OpenLayers.Control.DrawFeature.prototype.EVENT_TYPES.concat(
OpenLayers.Control.prototype.EVENT_TYPES
);
OpenLayers.Control.prototype.initialize.apply(this, [options]);
this.callbacks = OpenLayers.Util.extend({done: this.drawFeature},
this.callbacks);
@@ -64,6 +79,7 @@ OpenLayers.Control.DrawFeature = OpenLayers.Class(OpenLayers.Control, {
var feature = new OpenLayers.Feature.Vector(geometry);
this.layer.addFeatures([feature]);
this.featureAdded(feature);
this.events.triggerEvent("featureadded",{feature : feature});
},
CLASS_NAME: "OpenLayers.Control.DrawFeature"