review(#1624, #1637): repeat through dispatch_command; ZOOMFACTOR docs and Options test

- A blank script line outside a command repeats the last command through
  dispatch_command, as the command line's empty Enter does.
- ZOOMFACTOR bound docs describe the SETVAR range the PR widened, and the
  test keeps checking the value the Options field reaches.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Opus 5.5 committed 2026-10-06 20:22:54 +03:00
1 parent 59b76ada5c
commit fd12ef7768
3 files changed
+10 -8

No files matched your search

+2 -1
View File
@@ -1180,8 +1180,9 @@ impl OpenCADStudio {
if self.tabs[i].active_cmd.is_some() {
return self.feed_command(StepInput::Enter);
}
// Same repeat the command line's empty Enter gives.
if let Some(cmd) = self.tabs[i].last_cmd.clone() {
return self.run_command_line(&cmd);
return self.dispatch_command(&cmd);
}
return Task::none();
}
+3
View File
@@ -3617,6 +3617,9 @@ mod tests {
let _ = app.run_command_line("SETVAR ZOOMFACTOR 2");
assert_eq!(app.zoom_factor, 500, "and neither is 2");
// What the Options field reached is still reported here.
let _ = app.update(crate::app::Message::ZoomFactorInputChanged("250".into()));
assert_eq!(app.zoom_factor, 250);
let _ = app.run_command_line("SETVAR ZOOMFACTOR 60");
assert_eq!(app.zoom_factor, 60);
}
+5 -7
View File
@@ -171,13 +171,11 @@ pub fn clamp_right_click_hold_ms(v: i32) -> i32 {
/// ZOOMFACTOR bounds.
///
/// `ZOOM_FACTOR_SYSVAR_MAX` is the range the system variable has: `SETVAR
/// ZOOMFACTOR` accepts 3 to 100 and nothing else, so a drawing session set
/// up on the command line stays within the range the variable has everywhere
/// else. The Options window is the app's own surface and reaches
/// `ZOOM_FACTOR_MAX` for anyone who wants a faster wheel than the variable
/// can express; that value lives only in this application's own
/// configuration file, so it is nobody else's to read.
/// `ZOOM_FACTOR_SYSVAR_MAX` is where the Options slider stops: the range the
/// variable has elsewhere. Both the Options field and `SETVAR ZOOMFACTOR`
/// reach `ZOOM_FACTOR_MAX` for anyone who wants a faster wheel; the value
/// lives only in this application's own configuration file, so it is nobody
/// else's to read.
pub const ZOOM_FACTOR_MIN: i32 = 3;
pub const ZOOM_FACTOR_SYSVAR_MAX: i32 = 100;
pub const ZOOM_FACTOR_MAX: i32 = 500;