Snap immediately on starting a sketch. r=ahocevar (closes #2039)

git-svn-id: http://svn.openlayers.org/trunk/openlayers@9270 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
Tim Schaub
2009-04-12 15:38:41 +00:00
parent dfcf68007e
commit 29ba60eb59
2 changed files with 26 additions and 2 deletions

View File

@@ -175,7 +175,7 @@
function test_snapping(t) {
t.plan(33);
t.plan(46);
var map = new OpenLayers.Map("map", {
resolutions: [1],
@@ -298,7 +298,29 @@
// unsnap & reset
drag(-100, -50);
control.greedy = true;
events = [];
events = [];
// demonstrate snapping on sketchstarted
var p = new OpenLayers.Geometry.Point(0, 1);
layer1.events.triggerEvent("sketchstarted", {
vertex: p,
feature: new OpenLayers.Feature.Vector(p)
});
t.eq(events.length, 2, "[sketchstarted] 2 events triggered");
t.eq(events[0].type, "beforesnap", "[sketchstarted] beforesnap triggered");
t.eq(events[0].snapType, "node", "[sketchstarted] beforesnap triggered for node");
t.ok(events[0].point === p, "[sketchstarted] beforesnap triggered with vertex");
t.eq(events[0].x, 0, "[sketchstarted] beforesnap triggered correct x");
t.eq(events[0].y, 0, "[sketchstarted] beforesnap triggered with correct y");
t.eq(events[1].type, "snap", "[sketchstarted] snap triggered");
t.eq(events[1].snapType, "node", "[sketchstarted] snap triggered for node");
t.ok(events[1].point === p, "[sketchstarted] snap triggered with point");
t.eq(events[1].distance, 1, "[sketchstarted] snap triggered correct distance");
t.ok(events[1].layer === layer1, "[sketchstarted] snap triggered with correct target layer");
t.eq(p.x, 0, "[sketchstarted] vertex x modified");
t.eq(p.y, 0, "[sketchstarted] vertex y modified");
// reset
events = [];
map.destroy();