Files
OneCAD/crates/ui-egui/tests/scenarios/sketch_mirror_window.json
T
William Dunn d4fd760b0d A Mirror window for sketch entities, holding both picks until OK (#734)
Sketch Mirror now opens a tool window with Entities and Mirror line inputs, so both picks stay visible and editable until OK, replacing the old click-then-right-click flow.
2026-10-13 13:29:26 -04:00

46 lines
2.2 KiB
JSON

[
{"note": "sketch.mirror ran as a bare click flow: entities until a right-click, then one more click taken as the mirror line and committed at once. Nothing on screen said what was picked. It now opens a tool window carrying Entities and a Mirror line."},
{"start": "sketch.create"},
{"click": {"plane": "XY"}},
{"expect": {"sketching": true}},
{"start": "sketch.line"},
{"click": {"sketch": [0, -20]}},
{"click": {"sketch": [0, 20]}},
{"key": "Escape"},
{"start": "sketch.circle.center"},
{"click": {"sketch": [10, 0]}},
{"click": {"sketch": [13, 0]}},
{"key": "Escape"},
{"expect": {"sketch_curves": {"own": 2}, "errors": 0}},
{"note": "The press opens a window and commits nothing. Each pick is visible in its own input and nothing is created yet."},
{"start": "sketch.mirror"},
{"expect": {"dialog": "SketchModify(Mirror", "sketch_curves": {"own": 2}, "errors": 0}},
{"click": {"sketch": [13, 0]}},
{"click": {"handle": "dialog:Mirror line"}},
{"click": {"sketch": [0, 10]}},
{"expect": {"dialog": "SketchModify(Mirror", "sketch_curves": {"own": 2}, "errors": 0}},
{"note": "Escape leaves the sketch exactly as it was: the old click flow had already committed by this point."},
{"key": "Escape"},
{"expect": {"dialog": null, "errors": 0, "sketch_curves": {"own": 2}}},
{"note": "OK reflects the circle in the line: a 3 mm circle at x = 10 becomes a 3 mm circle at x = -10."},
{"start": "sketch.mirror"},
{"click": {"sketch": [13, 0]}},
{"click": {"handle": "dialog:Mirror line"}},
{"click": {"sketch": [0, 10]}},
{"click": {"handle": "dialog:OK"}},
{"expect": {"dialog": null, "errors": 0, "sketch_curves": {"own": 3}}},
{"expect": {"query": {"command": "sketch.inspect", "path": ["curves", 2, "radius"], "value": 3}}},
{"expect": {"query": {"command": "sketch.inspect", "path": ["curves", 2, "center_at", 0], "value": -10}}},
{"expect": {"query": {"command": "sketch.inspect", "path": ["curves", 2, "center_at", 1], "value": 0}}},
{"shot": "sketch_mirror_window"},
{"note": "Starting the command again and pressing Escape leaves the document and the undo history untouched."},
{"start": "sketch.mirror"},
{"expect": {"dialog": "SketchModify(Mirror"}},
{"key": "Escape"},
{"expect": {"dialog": null, "errors": 0}}
]