forked from 1b-agent/opencadstudio-upstream
feat: Layout Manager GUI (LAYOUTMANAGER / LAYOUTPANEL command)
Panel overlay showing all layouts with their active status. Supports: select, rename, new, delete, reorder (◀▶), set current. Also adds Scene::swap_layout_order() for tab-order resequencing. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
b8d15e5155
commit
85f9b930a2
6 files changed
+387
-2
No files matched your search
@@ -112,6 +112,11 @@ pub(super) struct H7CAD {
|
||||
/// Edit buffer for oblique angle (degrees).
|
||||
textstyle_oblique: String,
|
||||
|
||||
// ── Layout Manager Panel ──────────────────────────────────────────────
|
||||
layout_manager_open: bool,
|
||||
layout_manager_selected: String,
|
||||
layout_manager_rename_buf: String,
|
||||
|
||||
// ── Plot Style Panel ──────────────────────────────────────────────────
|
||||
plotstyle_panel_open: bool,
|
||||
/// Selected ACI index in the panel (1-255).
|
||||
@@ -338,6 +343,17 @@ pub enum Message {
|
||||
LayoutContextMenu(String),
|
||||
/// Close the layout context menu.
|
||||
LayoutContextMenuClose,
|
||||
// ── Layout Manager Panel ────────────────────────────────────────────
|
||||
LayoutManagerOpen,
|
||||
LayoutManagerClose,
|
||||
LayoutManagerSelect(String),
|
||||
LayoutManagerRenameBuf(String),
|
||||
LayoutManagerRenameCommit,
|
||||
LayoutManagerNew,
|
||||
LayoutManagerDelete,
|
||||
LayoutManagerMoveLeft,
|
||||
LayoutManagerMoveRight,
|
||||
LayoutManagerSetCurrent,
|
||||
/// Close the viewport right-click context menu without performing any action.
|
||||
ViewportContextMenuClose,
|
||||
/// A window was closed by the OS (e.g. the user clicked the title-bar ✕).
|
||||
@@ -514,6 +530,10 @@ impl H7CAD {
|
||||
page_setup_scale: "Fit".to_string(),
|
||||
// Plot style
|
||||
active_plot_style: None,
|
||||
// Layout Manager
|
||||
layout_manager_open: false,
|
||||
layout_manager_selected: "Model".to_string(),
|
||||
layout_manager_rename_buf: String::new(),
|
||||
plotstyle_panel_open: false,
|
||||
plotstyle_panel_aci: 1,
|
||||
ps_color_buf: String::new(),
|
||||
|
||||
Reference in new issue
Block a user