feat(mirror): add erase-source prompt (keep mirrored copy by default)
MIRROR now asks "Erase source objects? [Yes/No] <No>" after the second mirror-line point. No (default) keeps the original and adds a mirrored copy; Yes flips the original in place. Make the BatchCopy command-line message label-aware and singular/plural so MIRROR reports "1 copy". Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
1a9844b134
commit
e3e69ec152
2 changed files with 61 additions and 14 deletions
|
|
@ -241,7 +241,7 @@ impl OpenCADStudio {
|
|||
}
|
||||
CmdResult::BatchCopy(handles, transforms) => {
|
||||
let label = self.history_label_from_active_cmd(i, "ARRAY");
|
||||
self.push_undo_snapshot(i, label);
|
||||
self.push_undo_snapshot(i, label.clone());
|
||||
let count = transforms.len();
|
||||
for t in &transforms {
|
||||
self.tabs[i].scene.copy_entities(&handles, t);
|
||||
|
|
@ -251,8 +251,9 @@ impl OpenCADStudio {
|
|||
self.tabs[i].active_cmd = None;
|
||||
self.tabs[i].snap_result = None;
|
||||
self.restore_pre_cmd_tangent();
|
||||
let noun = if count == 1 { "copy" } else { "copies" };
|
||||
self.command_line
|
||||
.push_output(&format!("ARRAY: {count} copies created."));
|
||||
.push_output(&format!("{label}: {count} {noun} created."));
|
||||
self.refresh_properties();
|
||||
}
|
||||
CmdResult::ReplaceMany(replacements, additions) => {
|
||||
|
|
|
|||
Loading…
Reference in a new issue