Hi,I'm trying to let the user draw a line feature and deactivate the draw feature after the feature was added to the map. Here's my code:
var drawControls = {
point: new OpenLayers.Control.DrawFeature(vectors,
OpenLayers.Handler.Point),
line: new OpenLayers.Control.DrawFeature(vectors,
OpenLayers.Handler.Path,{featureAdded:
toggle }
),
rectangle: new OpenLayers.Control.DrawFeature(vectors,
OpenLayers.Handler.Box),
select: new OpenLayers.Control.SelectFeature(vectors),
};
for(var key in drawControls) {
map.addControl(drawControls[key]);
}
function toggle(feature){
var linecontrol = drawControls['line'];
linecontrol.deactivate();
}
I get an error as soon as the control gets deactivated:
this.point has no properties
-> this.point.destroy();
Here's the trace from FireBug:
destroyFeature()Point.js (line 128)
destroyFeature()Path.js (line 81)
finalize()Point.js (line 139)
dblclick(dblclick clientX=0, clientY=0)Path.js (line 240)
triggerEvent("dblclick", dblclick clientX=0, clientY=0)Events.js (line 612)
handleBrowserEvent(dblclick clientX=0, clientY=0)Events.js (line 640)
bindAsEventListener(dblclick clientX=0, clientY=0)
Looks like the control gets deactivated too early in the feature-adding
process. Is there any advice on how to deactivate a draw control after
drawing a feature?
Thanks, Kevin
smime.p7s
Description: S/MIME Cryptographic Signature
_______________________________________________ Users mailing list [email protected] http://openlayers.org/mailman/listinfo/users
