diff --git a/lib/OpenLayers/Handler/Path.js b/lib/OpenLayers/Handler/Path.js index 689ef3ba70..867e3f4aca 100644 --- a/lib/OpenLayers/Handler/Path.js +++ b/lib/OpenLayers/Handler/Path.js @@ -276,11 +276,21 @@ OpenLayers.Handler.Path = OpenLayers.Class(OpenLayers.Handler.Point, { } return true; }, + + /** + * APIMethod: finishGeometry + * Finish the geometry and send it back to the control. + */ + finishGeometry: function() { + var index = this.line.geometry.components.length - 1; + this.line.geometry.removeComponent(this.line.geometry.components[index]); + this.removePoint(); + this.finalize(); + }, /** * Method: dblclick - * Handle double-clicks. Finish the geometry and send it back - * to the control. + * Handle double-clicks. * * Parameters: * evt - {Event} The browser event @@ -290,10 +300,7 @@ OpenLayers.Handler.Path = OpenLayers.Class(OpenLayers.Handler.Point, { */ dblclick: function(evt) { if(!this.freehandMode(evt)) { - var index = this.line.geometry.components.length - 1; - this.line.geometry.removeComponent(this.line.geometry.components[index]); - this.removePoint(); - this.finalize(); + this.finishGeometry(); } return false; },