refactor: group ui/ style+popup dirs, rename cmd_result driver

- Group the flat src/ui/ dir: move the 9 style editors into ui/style/
  (dimstyle, mleaderstyle, mlstyle, plotstyle, textstyle, tablestyle,
  point_style, style_list, style_manager) and the 6 popups into
  ui/popup/ (cycle, isolate, scale, selection_filter, snap, units).
  Call sites repointed to crate::ui::style::/crate::ui::popup::; no
  compat re-exports. ui/ root drops from 36 to 21 files.
- Rename app/cmd_result.rs -> app/command_driver.rs: the file is the
  StepInput->feed_command driver, not the CmdResult type (which lives
  in command.rs). Name now matches contents.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
This commit is contained in:
Hakan SevenandClaude Opus 4.8 committed 2026-06-26 23:34:10 +03:00
1 parent 7cb666801f
commit 9cd0479047
24 files changed
+40 -38

No files matched your search

File renamed without changes.
+1 -1
View File
@@ -2,7 +2,7 @@
mod automation;
#[cfg(not(target_arch = "wasm32"))]
pub use automation::{export_headless, serve};
mod cmd_result;
mod command_driver;
mod commands;
mod document;
mod expr_eval;
+1 -1
View File
@@ -2703,7 +2703,7 @@ impl OpenCADStudio {
self.style_rename_start(kind, name);
// Focus the freshly-shown rename field so the user can type
// immediately after the double click.
iced::widget::operation::focus(crate::ui::style_list::rename_input_id())
iced::widget::operation::focus(crate::ui::style::style_list::rename_input_id())
}
Message::StyleRenameEdit(s) => {
self.style_rename_buf = s;
+6 -6
View File
@@ -883,7 +883,7 @@ impl OpenCADStudio {
.collect();
if !items.is_empty() {
viewport_stack = viewport_stack
.push(crate::ui::cycle_popup::cycle_popup_overlay(*pt, items));
.push(crate::ui::popup::cycle_popup::cycle_popup_overlay(*pt, items));
}
}
}
@@ -1065,14 +1065,14 @@ impl OpenCADStudio {
.height(Fill);
let snap_layer: Element<'_, Message> = if self.snap_popup_open {
crate::ui::snap_popup::snap_popup_overlay(&self.snapper, 4.0)
crate::ui::popup::snap_popup::snap_popup_overlay(&self.snapper, 4.0)
} else {
iced::widget::Space::new().width(0).height(0).into()
};
let scale_layer: Element<'_, Message> = if self.scale_popup_open {
let is_model = tab.scene.current_layout == "Model";
crate::ui::scale_popup::scale_popup_overlay(
crate::ui::popup::scale_popup::scale_popup_overlay(
is_model,
tab.scene.annotation_scale,
tab.scene.first_viewport_scale(),
@@ -1089,13 +1089,13 @@ impl OpenCADStudio {
};
let units_layer: Element<'_, Message> = if self.units_popup_open {
crate::ui::units_popup::units_popup_overlay(tab.scene.document.header.insertion_units)
crate::ui::popup::units_popup::units_popup_overlay(tab.scene.document.header.insertion_units)
} else {
iced::widget::Space::new().width(0).height(0).into()
};
let isolate_layer: Element<'_, Message> = if self.isolate_popup_open {
crate::ui::isolate_popup::isolate_popup_overlay(
crate::ui::popup::isolate_popup::isolate_popup_overlay(
!tab.scene.selected.is_empty(),
tab.scene.is_isolation_active(),
)
@@ -1110,7 +1110,7 @@ impl OpenCADStudio {
.into_iter()
.map(|s| s.to_string())
.collect();
crate::ui::selection_filter_popup::selection_filter_popup_overlay(
crate::ui::popup::selection_filter_popup::selection_filter_popup_overlay(
types,
&tab.scene.selection_filter,
)
+8 -8
View File
@@ -77,7 +77,7 @@ impl OpenCADStudio {
)
}
super::super::ModalKind::Plotstyle => sized(
crate::ui::plotstyle::view_window(
crate::ui::style::plotstyle::view_window(
self.active_plot_style.as_ref(),
self.plotstyle_panel_aci,
&self.ps_color_buf,
@@ -104,7 +104,7 @@ impl OpenCADStudio {
.map(|s| (s.flags.backward, s.flags.upside_down, s.annotative))
.unwrap_or((false, false, false));
sized(
crate::ui::textstyle::view_window(crate::ui::textstyle::TextStyleView {
crate::ui::style::textstyle::view_window(crate::ui::style::textstyle::TextStyleView {
styles,
selected: &self.textstyle_selected,
current: &tab.scene.document.header.current_text_style_name,
@@ -144,7 +144,7 @@ impl OpenCADStudio {
_ => None,
});
sized(
crate::ui::mlstyle::view_window(
crate::ui::style::mlstyle::view_window(
styles,
&self.mlstyle_selected,
selected_style,
@@ -174,7 +174,7 @@ impl OpenCADStudio {
_ => None,
});
sized(
crate::ui::tablestyle::view_window(
crate::ui::style::tablestyle::view_window(
styles,
&self.tablestyle_selected,
&self.ribbon.active_table_style,
@@ -270,7 +270,7 @@ impl OpenCADStudio {
None => Default::default(),
};
sized(
crate::ui::mleaderstyle::view_window(crate::ui::mleaderstyle::MLeaderStyleView {
crate::ui::style::mleaderstyle::view_window(crate::ui::style::mleaderstyle::MLeaderStyleView {
styles,
selected: &self.mleaderstyle_selected,
style: selected_style,
@@ -370,7 +370,7 @@ impl OpenCADStudio {
),
None => Default::default(),
};
sized(crate::ui::dimstyle::view_window(
sized(crate::ui::style::dimstyle::view_window(
styles,
&self.dimstyle_selected,
&self.tabs[self.active_tab]
@@ -379,7 +379,7 @@ impl OpenCADStudio {
.header
.current_dimstyle_name,
self.dimstyle_tab,
crate::ui::dimstyle::DimStyleValues {
crate::ui::style::dimstyle::DimStyleValues {
dimdle: &self.ds_dimdle,
dimdli: &self.ds_dimdli,
dimgap: &self.ds_dimgap,
@@ -484,7 +484,7 @@ impl OpenCADStudio {
sized(unsaved_changes_dialog_window(&tab_name), 420, 160)
}
super::super::ModalKind::PointStyle => sized(
crate::ui::point_style::view_window(
crate::ui::style::point_style::view_window(
self.tabs[self.active_tab].scene.document.header.point_display_mode,
self.point_size_relative,
&self.point_size_buf,
+2 -15
View File
@@ -6,37 +6,24 @@ pub mod about;
pub mod app_menu;
pub mod color_select;
pub mod command_line;
pub mod cycle_popup;
pub mod dimstyle;
pub mod icons;
pub mod isolate_popup;
pub mod layers;
pub mod layout_manager;
pub mod mleaderstyle;
pub mod mlstyle;
pub mod modal;
pub mod open_progress;
pub mod overlay;
pub mod page_setup;
pub mod plotstyle;
pub mod plugin_manager;
pub mod point_style;
pub mod popup;
pub mod properties;
pub mod ribbon;
pub mod scale_popup;
pub mod selection_filter_popup;
pub mod side_toolbar;
pub mod shortcuts;
pub mod snap_popup;
pub mod statusbar;
pub mod statusbar_config;
pub mod statusbar_menu;
pub mod style_list;
pub mod style_manager;
pub mod tablestyle;
pub mod style;
pub mod text_util;
pub mod textstyle;
pub mod units_popup;
pub mod update_notice;
pub use app_menu::AppMenu;
File renamed without changes.
File renamed without changes.
+6
View File
@@ -0,0 +1,6 @@
pub mod cycle_popup;
pub mod isolate_popup;
pub mod scale_popup;
pub mod selection_filter_popup;
pub mod snap_popup;
pub mod units_popup;
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+1 -1
View File
@@ -167,7 +167,7 @@ impl StatusBar {
if vis(StatusPill::Units) {
right_status = right_status.push(tip(
units_btn(
crate::ui::units_popup::unit_short(insertion_units),
crate::ui::popup::units_popup::unit_short(insertion_units),
units_popup_open,
),
"Drawing Units (INSUNITS)\nClick to change",
@@ -792,7 +792,7 @@ pub fn view_window<'a>(
left: 0.0,
});
crate::ui::style_manager::view(crate::ui::style_manager::Scaffold {
crate::ui::style::style_manager::view(crate::ui::style::style_manager::Scaffold {
kind: crate::app::StyleKind::Dim,
styles: &styles,
selected,
@@ -413,7 +413,7 @@ pub fn view_window<'a>(v: MLeaderStyleView<'a>) -> Element<'a, Message> {
let right_panel = container(details).width(Fill).height(Fill);
crate::ui::style_manager::view(crate::ui::style_manager::Scaffold {
crate::ui::style::style_manager::view(crate::ui::style::style_manager::Scaffold {
kind: crate::app::StyleKind::MLeader,
styles: &v.styles,
selected: v.selected,
@@ -79,7 +79,7 @@ pub fn view_window<'a>(
let right_panel = container(details).width(Fill).height(Fill);
crate::ui::style_manager::view(crate::ui::style_manager::Scaffold {
crate::ui::style::style_manager::view(crate::ui::style::style_manager::Scaffold {
kind: crate::app::StyleKind::MLine,
styles: &styles,
selected,
+9
View File
@@ -0,0 +1,9 @@
pub mod dimstyle;
pub mod mleaderstyle;
pub mod mlstyle;
pub mod plotstyle;
pub mod textstyle;
pub mod tablestyle;
pub mod point_style;
pub mod style_list;
pub mod style_manager;
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -115,7 +115,7 @@ pub fn view<'a, 'b>(s: Scaffold<'a, 'b>) -> Element<'a, Message> {
.map(|name| {
let is_sel = name.as_str() == s.selected;
let is_current = s.current == Some(name.as_str());
crate::ui::style_list::item(
crate::ui::style::style_list::item(
name,
is_current,
is_sel,
@@ -369,7 +369,7 @@ pub fn view_window<'a>(
let right_panel = container(details).width(Fill).height(Fill);
crate::ui::style_manager::view(crate::ui::style_manager::Scaffold {
crate::ui::style::style_manager::view(crate::ui::style::style_manager::Scaffold {
kind: crate::app::StyleKind::Table,
styles: &styles,
selected,
@@ -306,7 +306,7 @@ pub fn view_window<'a>(v: TextStyleView<'a>) -> Element<'a, Message> {
let editor = row![font_panel, vsep(), ttf_panel, vsep(), props_panel].height(Fill);
crate::ui::style_manager::view(crate::ui::style_manager::Scaffold {
crate::ui::style::style_manager::view(crate::ui::style::style_manager::Scaffold {
kind: StyleKind::Text,
styles: &styles,
selected,