forked from 1b-agent/opencadstudio-upstream
feat(options): menu bar, ribbon and HPASSOC switches; see-through command line by default
Options > Display gains Window Elements with "Show the menu bar" (MENUBAR) and "Show the ribbon" (RIBBON / RIBBONCLOSE); Options > User Preferences gains a Hatch switch for HPASSOC. The command line now starts at 80 % opacity so the drawing shows through it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ee18f7ad3c
commit
8a2bc443e0
29 files changed
+163
-3
No files matched your search
@@ -192,7 +192,7 @@ pub struct CommandLine {
|
||||
/// the pinned step prompt still shows.
|
||||
fade_ms: u32,
|
||||
/// COMMANDLINEOPACITY: how opaque the command line's panels are, in
|
||||
/// percent (20–100, default 100), so the drawing shows through.
|
||||
/// percent (20–100, default 80), so the drawing shows through.
|
||||
opacity_percent: u8,
|
||||
}
|
||||
|
||||
@@ -220,7 +220,7 @@ impl Default for CommandLine {
|
||||
step_options: Vec::new(),
|
||||
cliprompt_lines: 3,
|
||||
fade_ms: DEFAULT_COMMANDLINE_FADE_MS,
|
||||
opacity_percent: 100,
|
||||
opacity_percent: 80,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,6 +55,12 @@ pub struct AppPrefs {
|
||||
pub commandline_fade_ms: i32,
|
||||
/// COMMANDLINEOPACITY: command-line panel opacity in percent.
|
||||
pub command_line_opacity: u8,
|
||||
/// MENUBAR: the pull-down menus show above the ribbon.
|
||||
pub show_menu_bar: bool,
|
||||
/// The ribbon shows (RIBBON / RIBBONCLOSE).
|
||||
pub show_ribbon: bool,
|
||||
/// HPASSOC: new hatches follow their boundary objects.
|
||||
pub hatch_associative: bool,
|
||||
/// ZOOMWHEEL: reverse the mouse-wheel zoom direction.
|
||||
pub zoom_wheel_reversed: bool,
|
||||
/// Scroll pans and Ctrl+scroll zooms (touchpads).
|
||||
@@ -920,6 +926,30 @@ pub fn view_window<'a>(
|
||||
.align_y(iced::Center),
|
||||
)
|
||||
.push(Space::new().height(24))
|
||||
.push(text(crate::t!("Window Elements")).size(15))
|
||||
.push(Space::new().height(10))
|
||||
.push(
|
||||
row![
|
||||
iced::widget::checkbox(prefs.show_menu_bar)
|
||||
.on_toggle(Message::MenuBarChanged)
|
||||
.size(15),
|
||||
text(crate::t!("Show the menu bar (MENUBAR)")).size(12),
|
||||
]
|
||||
.spacing(8)
|
||||
.align_y(iced::Center),
|
||||
)
|
||||
.push(Space::new().height(8))
|
||||
.push(
|
||||
row![
|
||||
iced::widget::checkbox(prefs.show_ribbon)
|
||||
.on_toggle(Message::RibbonVisibleChanged)
|
||||
.size(15),
|
||||
text(crate::t!("Show the ribbon (RIBBON / RIBBONCLOSE)")).size(12),
|
||||
]
|
||||
.spacing(8)
|
||||
.align_y(iced::Center),
|
||||
)
|
||||
.push(Space::new().height(24))
|
||||
.push(text(crate::t!("Command Line")).size(15))
|
||||
.push(Space::new().height(10))
|
||||
.push(
|
||||
@@ -1479,6 +1509,17 @@ pub fn view_window<'a>(
|
||||
]
|
||||
.spacing(10)
|
||||
.align_y(iced::Center),
|
||||
Space::new().height(24),
|
||||
text(crate::t!("Hatch")).size(15),
|
||||
Space::new().height(10),
|
||||
row![
|
||||
iced::widget::checkbox(prefs.hatch_associative)
|
||||
.on_toggle(Message::HatchAssociativeChanged)
|
||||
.size(15),
|
||||
text(crate::t!("New hatches follow their boundaries (HPASSOC)")).size(12),
|
||||
]
|
||||
.spacing(8)
|
||||
.align_y(iced::Center),
|
||||
]
|
||||
.spacing(0)
|
||||
.width(sizing.width);
|
||||
|
||||
Reference in new issue
Block a user