feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
// Annotate module — dimension, text, leader, table, and markup tools.
|
2026-03-22 14:56:27 +03:00
|
|
|
|
2026-04-03 09:29:11 +03:00
|
|
|
pub mod aligned_dim;
|
2026-03-22 14:56:27 +03:00
|
|
|
pub mod angular_dim;
|
2026-04-07 11:05:24 +03:00
|
|
|
pub mod ddedit;
|
2026-04-03 09:29:11 +03:00
|
|
|
pub mod diameter_dim;
|
Feat: ROADMAP Phase 1-5 batch — trim/extend, plot scale, viewport UX, mline caps, table alignment
- TRIM/EXTEND: Ray and XLine entities supported as cutting boundaries and trim targets;
trim results in Ray→Line/Ray, XLine→Ray/Ray or Line; hover preview added
- Plot scale override: Fit/1:1/1:2/1:5/1:10/1:20/1:50/1:100/2:1 buttons added to Page Setup
panel; PageSetupCommit applies scale to PlotSettings
- Viewport UX: locked viewport gets orange border; selected viewport gets white border
- Named view → viewport assignment: Choice dropdown in properties panel copies
view_target/direction/height to the viewport entity
- MLine caps: perpendicular start/end cap lines added for open (non-closed) MLines
- Wipeout polygon grips: boundary vertices become editable grips when clipping_enabled+Polygonal;
world→pixel back-projection on drag
- Table cell alignment: CellStyle.alignment (1-9) drives left/center/right + top/middle/bottom
text positioning; cxf::measure_text() helper added
- New commands/features: DIMCONTINUE (DCO), DIMBASELINE (DBA), TOLERANCE (TOL), TABLE,
ATTDEF, ATTEDIT, ATTDISP, BREAKATPOINT (BAP), PLOTWINDOW (PW), MLINE (ML);
DIMSTYLE/DIMCURRENT/CLAYER/LTSCALE/CELTSCALE/SCALETEXT/XDATA/UCSICON/REGEN/DRAWORDER extended
- PLINE arc mode: A/L/CLOSE text input, bulge computation, arc preview
- Warning cleanup: removed unused imports and unreachable patterns
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-03 15:31:05 +03:00
|
|
|
pub mod dim_baseline;
|
|
|
|
|
pub mod dim_continue;
|
feat: add missing Annotate tab commands and icons
New dimension commands: QDIM, DIMEDIT, DIMTEDIT, DIMBREAK, DIMSPACE,
DIMJOGLINE with full command workflows and SVG icons.
New multileader commands: MLEADERADD, MLEADERREMOVE, MLEADERALIGN,
MLEADERCOLLECT with entity injection pattern for in-place editing.
Updated annotate ribbon: all tools exposed across Text, Dimensions,
Leaders, Tables, Markup, and Annotation Scaling groups. Added STYLE,
FIND, DIMSTYLE shortcut buttons.
Added `inject_picked_entity` to the CadCommand trait for commands that
need a cloned copy of the picked entity to modify (DIMTEDIT, MLEADERADD,
MLEADERREMOVE). Sentinel-based dispatch in cmd_result.rs handles
DIMBREAK, DIMSPACE, DIMJOGLINE, MLEADERALIGN, and MLEADERCOLLECT.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:26:47 +03:00
|
|
|
pub mod dimbreak;
|
|
|
|
|
pub mod dimedit;
|
|
|
|
|
pub mod dimjogline;
|
|
|
|
|
pub mod dimspace;
|
|
|
|
|
pub mod dimtedit;
|
2026-03-22 14:56:27 +03:00
|
|
|
pub mod leader_cmd;
|
|
|
|
|
pub mod linear_dim;
|
|
|
|
|
pub mod mleader_cmd;
|
feat: add missing Annotate tab commands and icons
New dimension commands: QDIM, DIMEDIT, DIMTEDIT, DIMBREAK, DIMSPACE,
DIMJOGLINE with full command workflows and SVG icons.
New multileader commands: MLEADERADD, MLEADERREMOVE, MLEADERALIGN,
MLEADERCOLLECT with entity injection pattern for in-place editing.
Updated annotate ribbon: all tools exposed across Text, Dimensions,
Leaders, Tables, Markup, and Annotation Scaling groups. Added STYLE,
FIND, DIMSTYLE shortcut buttons.
Added `inject_picked_entity` to the CadCommand trait for commands that
need a cloned copy of the picked entity to modify (DIMTEDIT, MLEADERADD,
MLEADERREMOVE). Sentinel-based dispatch in cmd_result.rs handles
DIMBREAK, DIMSPACE, DIMJOGLINE, MLEADERALIGN, and MLEADERCOLLECT.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:26:47 +03:00
|
|
|
pub mod mleader_edit;
|
2026-03-22 14:56:27 +03:00
|
|
|
pub mod mtext;
|
feat: add missing Annotate tab commands and icons
New dimension commands: QDIM, DIMEDIT, DIMTEDIT, DIMBREAK, DIMSPACE,
DIMJOGLINE with full command workflows and SVG icons.
New multileader commands: MLEADERADD, MLEADERREMOVE, MLEADERALIGN,
MLEADERCOLLECT with entity injection pattern for in-place editing.
Updated annotate ribbon: all tools exposed across Text, Dimensions,
Leaders, Tables, Markup, and Annotation Scaling groups. Added STYLE,
FIND, DIMSTYLE shortcut buttons.
Added `inject_picked_entity` to the CadCommand trait for commands that
need a cloned copy of the picked entity to modify (DIMTEDIT, MLEADERADD,
MLEADERREMOVE). Sentinel-based dispatch in cmd_result.rs handles
DIMBREAK, DIMSPACE, DIMJOGLINE, MLEADERALIGN, and MLEADERCOLLECT.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:26:47 +03:00
|
|
|
pub mod ordinate_dim;
|
|
|
|
|
pub mod qdim;
|
2026-03-22 14:56:27 +03:00
|
|
|
pub mod radius_dim;
|
Feat: ROADMAP Phase 1-5 batch — trim/extend, plot scale, viewport UX, mline caps, table alignment
- TRIM/EXTEND: Ray and XLine entities supported as cutting boundaries and trim targets;
trim results in Ray→Line/Ray, XLine→Ray/Ray or Line; hover preview added
- Plot scale override: Fit/1:1/1:2/1:5/1:10/1:20/1:50/1:100/2:1 buttons added to Page Setup
panel; PageSetupCommit applies scale to PlotSettings
- Viewport UX: locked viewport gets orange border; selected viewport gets white border
- Named view → viewport assignment: Choice dropdown in properties panel copies
view_target/direction/height to the viewport entity
- MLine caps: perpendicular start/end cap lines added for open (non-closed) MLines
- Wipeout polygon grips: boundary vertices become editable grips when clipping_enabled+Polygonal;
world→pixel back-projection on drag
- Table cell alignment: CellStyle.alignment (1-9) drives left/center/right + top/middle/bottom
text positioning; cxf::measure_text() helper added
- New commands/features: DIMCONTINUE (DCO), DIMBASELINE (DBA), TOLERANCE (TOL), TABLE,
ATTDEF, ATTEDIT, ATTDISP, BREAKATPOINT (BAP), PLOTWINDOW (PW), MLINE (ML);
DIMSTYLE/DIMCURRENT/CLAYER/LTSCALE/CELTSCALE/SCALETEXT/XDATA/UCSICON/REGEN/DRAWORDER extended
- PLINE arc mode: A/L/CLOSE text input, bulge computation, arc preview
- Warning cleanup: removed unused imports and unreachable patterns
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-03 15:31:05 +03:00
|
|
|
pub mod table_cmd;
|
2026-03-22 14:56:27 +03:00
|
|
|
pub mod text;
|
Feat: ROADMAP Phase 1-5 batch — trim/extend, plot scale, viewport UX, mline caps, table alignment
- TRIM/EXTEND: Ray and XLine entities supported as cutting boundaries and trim targets;
trim results in Ray→Line/Ray, XLine→Ray/Ray or Line; hover preview added
- Plot scale override: Fit/1:1/1:2/1:5/1:10/1:20/1:50/1:100/2:1 buttons added to Page Setup
panel; PageSetupCommit applies scale to PlotSettings
- Viewport UX: locked viewport gets orange border; selected viewport gets white border
- Named view → viewport assignment: Choice dropdown in properties panel copies
view_target/direction/height to the viewport entity
- MLine caps: perpendicular start/end cap lines added for open (non-closed) MLines
- Wipeout polygon grips: boundary vertices become editable grips when clipping_enabled+Polygonal;
world→pixel back-projection on drag
- Table cell alignment: CellStyle.alignment (1-9) drives left/center/right + top/middle/bottom
text positioning; cxf::measure_text() helper added
- New commands/features: DIMCONTINUE (DCO), DIMBASELINE (DBA), TOLERANCE (TOL), TABLE,
ATTDEF, ATTEDIT, ATTDISP, BREAKATPOINT (BAP), PLOTWINDOW (PW), MLINE (ML);
DIMSTYLE/DIMCURRENT/CLAYER/LTSCALE/CELTSCALE/SCALETEXT/XDATA/UCSICON/REGEN/DRAWORDER extended
- PLINE arc mode: A/L/CLOSE text input, bulge computation, arc preview
- Warning cleanup: removed unused imports and unreachable patterns
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-03 15:31:05 +03:00
|
|
|
pub mod tolerance_cmd;
|
2026-03-22 14:56:27 +03:00
|
|
|
|
2026-04-09 03:38:23 +03:00
|
|
|
use crate::modules::{CadModule, RibbonGroup, RibbonItem, StyleKey};
|
2026-03-22 14:56:27 +03:00
|
|
|
|
|
|
|
|
pub struct AnnotateModule;
|
|
|
|
|
|
|
|
|
|
impl CadModule for AnnotateModule {
|
|
|
|
|
fn id(&self) -> &'static str {
|
|
|
|
|
"annotate"
|
|
|
|
|
}
|
|
|
|
|
fn title(&self) -> &'static str {
|
|
|
|
|
"Annotate"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fn ribbon_groups(&self) -> Vec<RibbonGroup> {
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
use crate::modules::home::draw::{wipeout, revcloud};
|
|
|
|
|
|
2026-03-22 14:56:27 +03:00
|
|
|
vec![
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
// ── Text ─────────────────────────────────────────────────────
|
2026-03-22 14:56:27 +03:00
|
|
|
RibbonGroup {
|
|
|
|
|
title: "Text",
|
|
|
|
|
tools: vec![
|
|
|
|
|
RibbonItem::LargeDropdown {
|
|
|
|
|
id: "ANNOTATE_TEXT",
|
2026-04-09 03:38:23 +03:00
|
|
|
label: "Multiline\nText",
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
icon: mtext::ICON,
|
2026-03-22 14:56:27 +03:00
|
|
|
items: vec![
|
|
|
|
|
(mtext::tool().id, mtext::tool().label, mtext::tool().icon),
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
(text::tool().id, text::tool().label, text::tool().icon),
|
|
|
|
|
(ddedit::tool().id, ddedit::tool().label, ddedit::tool().icon),
|
2026-03-22 14:56:27 +03:00
|
|
|
],
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
default: "MTEXT",
|
2026-03-22 14:56:27 +03:00
|
|
|
},
|
2026-04-09 03:38:23 +03:00
|
|
|
RibbonItem::StyleComboGroup {
|
|
|
|
|
style_key: StyleKey::TextStyle,
|
|
|
|
|
combo_id: "TEXT_STYLE_COMBO",
|
|
|
|
|
manager_cmd: Some("STYLE"),
|
|
|
|
|
rows: vec![
|
|
|
|
|
vec![
|
|
|
|
|
crate::modules::ToolDef {
|
|
|
|
|
id: "FIND",
|
|
|
|
|
label: "Find",
|
|
|
|
|
icon: crate::modules::IconKind::Svg(include_bytes!("../../../assets/icons/find.svg")),
|
|
|
|
|
event: crate::modules::ModuleEvent::Command("FIND".to_string()),
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
],
|
|
|
|
|
},
|
2026-03-22 14:56:27 +03:00
|
|
|
],
|
|
|
|
|
},
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
// ── Dimensions ───────────────────────────────────────────────
|
2026-03-22 14:56:27 +03:00
|
|
|
RibbonGroup {
|
|
|
|
|
title: "Dimensions",
|
|
|
|
|
tools: vec![
|
|
|
|
|
RibbonItem::LargeDropdown {
|
|
|
|
|
id: "ANNOTATE_DIM",
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
label: "Dimension",
|
2026-03-22 14:56:27 +03:00
|
|
|
icon: linear_dim::ICON,
|
|
|
|
|
items: vec![
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
(linear_dim::tool().id, linear_dim::tool().label, linear_dim::tool().icon),
|
|
|
|
|
(aligned_dim::tool().id, aligned_dim::tool().label, aligned_dim::tool().icon),
|
2026-03-22 14:56:27 +03:00
|
|
|
(angular_dim::tool().id, angular_dim::tool().label, angular_dim::tool().icon),
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
(radius_dim::tool().id, radius_dim::tool().label, radius_dim::tool().icon),
|
|
|
|
|
(diameter_dim::tool().id, diameter_dim::tool().label, diameter_dim::tool().icon),
|
2026-04-08 00:21:35 +03:00
|
|
|
(ordinate_dim::tool().id, ordinate_dim::tool().label, ordinate_dim::tool().icon),
|
feat: add missing Annotate tab commands and icons
New dimension commands: QDIM, DIMEDIT, DIMTEDIT, DIMBREAK, DIMSPACE,
DIMJOGLINE with full command workflows and SVG icons.
New multileader commands: MLEADERADD, MLEADERREMOVE, MLEADERALIGN,
MLEADERCOLLECT with entity injection pattern for in-place editing.
Updated annotate ribbon: all tools exposed across Text, Dimensions,
Leaders, Tables, Markup, and Annotation Scaling groups. Added STYLE,
FIND, DIMSTYLE shortcut buttons.
Added `inject_picked_entity` to the CadCommand trait for commands that
need a cloned copy of the picked entity to modify (DIMTEDIT, MLEADERADD,
MLEADERREMOVE). Sentinel-based dispatch in cmd_result.rs handles
DIMBREAK, DIMSPACE, DIMJOGLINE, MLEADERALIGN, and MLEADERCOLLECT.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:26:47 +03:00
|
|
|
(qdim::tool().id, qdim::tool().label, qdim::tool().icon),
|
2026-03-22 14:56:27 +03:00
|
|
|
],
|
|
|
|
|
default: "DIMLINEAR",
|
|
|
|
|
},
|
2026-04-09 03:38:23 +03:00
|
|
|
RibbonItem::StyleComboGroup {
|
|
|
|
|
style_key: StyleKey::DimStyle,
|
|
|
|
|
combo_id: "DIM_STYLE_COMBO",
|
|
|
|
|
manager_cmd: Some("DIMSTYLE"),
|
|
|
|
|
rows: vec![
|
|
|
|
|
vec![
|
|
|
|
|
qdim::tool(),
|
|
|
|
|
dim_continue::tool(),
|
|
|
|
|
dim_baseline::tool(),
|
|
|
|
|
],
|
|
|
|
|
vec![
|
|
|
|
|
tolerance_cmd::tool(),
|
|
|
|
|
dimedit::tool(),
|
|
|
|
|
dimtedit::tool(),
|
|
|
|
|
dimbreak::tool(),
|
|
|
|
|
dimspace::tool(),
|
|
|
|
|
dimjogline::tool(),
|
|
|
|
|
],
|
|
|
|
|
],
|
|
|
|
|
},
|
2026-03-22 14:56:27 +03:00
|
|
|
],
|
|
|
|
|
},
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
// ── Leaders ──────────────────────────────────────────────────
|
2026-03-22 14:56:27 +03:00
|
|
|
RibbonGroup {
|
|
|
|
|
title: "Leaders",
|
|
|
|
|
tools: vec![
|
|
|
|
|
RibbonItem::LargeDropdown {
|
|
|
|
|
id: "ANNOTATE_LEADER",
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
label: "Multileader",
|
|
|
|
|
icon: mleader_cmd::ICON,
|
2026-03-22 14:56:27 +03:00
|
|
|
items: vec![
|
|
|
|
|
(mleader_cmd::tool().id, mleader_cmd::tool().label, mleader_cmd::tool().icon),
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
(leader_cmd::tool().id, leader_cmd::tool().label, leader_cmd::tool().icon),
|
2026-03-22 14:56:27 +03:00
|
|
|
],
|
|
|
|
|
default: "MLEADER",
|
|
|
|
|
},
|
2026-04-09 03:38:23 +03:00
|
|
|
RibbonItem::StyleComboGroup {
|
|
|
|
|
style_key: StyleKey::MLeaderStyle,
|
|
|
|
|
combo_id: "MLEADER_STYLE_COMBO",
|
|
|
|
|
manager_cmd: Some("MLEADERSTYLE"),
|
|
|
|
|
rows: vec![
|
|
|
|
|
vec![
|
|
|
|
|
mleader_edit::tool_add(),
|
|
|
|
|
mleader_edit::tool_remove(),
|
|
|
|
|
],
|
|
|
|
|
vec![
|
|
|
|
|
mleader_edit::tool_align(),
|
|
|
|
|
mleader_edit::tool_collect(),
|
|
|
|
|
],
|
|
|
|
|
],
|
|
|
|
|
},
|
2026-03-22 14:56:27 +03:00
|
|
|
],
|
|
|
|
|
},
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
// ── Tables ───────────────────────────────────────────────────
|
|
|
|
|
RibbonGroup {
|
|
|
|
|
title: "Tables",
|
|
|
|
|
tools: vec![
|
|
|
|
|
RibbonItem::LargeTool(table_cmd::tool()),
|
2026-04-09 03:38:23 +03:00
|
|
|
RibbonItem::StyleComboGroup {
|
|
|
|
|
style_key: StyleKey::TableStyle,
|
|
|
|
|
combo_id: "TABLE_STYLE_COMBO",
|
|
|
|
|
manager_cmd: Some("TABLESTYLE"),
|
|
|
|
|
rows: vec![],
|
|
|
|
|
},
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
],
|
|
|
|
|
},
|
|
|
|
|
// ── Markup ───────────────────────────────────────────────────
|
|
|
|
|
RibbonGroup {
|
|
|
|
|
title: "Markup",
|
|
|
|
|
tools: vec![
|
2026-04-09 03:47:22 +03:00
|
|
|
RibbonItem::LargeTool(wipeout::tool()),
|
|
|
|
|
RibbonItem::LargeTool(revcloud::tool()),
|
feat: redesign Annotate ribbon tab with proper groups and SVG icons
Added 15 SVG icons for all annotation tools (dimensions, leaders,
table, wipeout, revision cloud, tolerance, ddedit).
Annotate ribbon now has 6 groups matching standard CAD layout:
- Text: MText (large dropdown) + Text + Edit Text
- Dimensions: Linear (large dropdown with 6 types) + Continue + Baseline + Tolerance
- Leaders: Multileader (large dropdown) + Leader
- Tables: Table (large)
- Markup: Wipeout + Rev Cloud
- Annotation Scaling: Scale List, Add Scale, Scale Edit, Sync Scales
Added pub tool() + ICON to all annotate tools that were missing them
(aligned_dim, diameter_dim, dim_continue, dim_baseline, table_cmd,
tolerance_cmd, ddedit), and to home/draw/wipeout and revcloud.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 03:03:08 +03:00
|
|
|
],
|
|
|
|
|
},
|
|
|
|
|
// ── Annotation Scaling ───────────────────────────────────────
|
|
|
|
|
RibbonGroup {
|
|
|
|
|
title: "Annotation Scaling",
|
|
|
|
|
tools: vec![
|
|
|
|
|
RibbonItem::Tool(crate::modules::ToolDef {
|
|
|
|
|
id: "ANNOSCALE",
|
|
|
|
|
label: "Scale List",
|
|
|
|
|
icon: crate::modules::IconKind::Glyph("⬡"),
|
|
|
|
|
event: crate::modules::ModuleEvent::Command("ANNOSCALE".to_string()),
|
|
|
|
|
}),
|
|
|
|
|
RibbonItem::Tool(crate::modules::ToolDef {
|
|
|
|
|
id: "OBJECTSCALE",
|
|
|
|
|
label: "Add Scale",
|
|
|
|
|
icon: crate::modules::IconKind::Glyph("⊕"),
|
|
|
|
|
event: crate::modules::ModuleEvent::Command("OBJECTSCALE".to_string()),
|
|
|
|
|
}),
|
|
|
|
|
RibbonItem::Tool(crate::modules::ToolDef {
|
|
|
|
|
id: "SCALELISTEDIT",
|
|
|
|
|
label: "Scale Edit",
|
|
|
|
|
icon: crate::modules::IconKind::Glyph("≡"),
|
|
|
|
|
event: crate::modules::ModuleEvent::Command("SCALELISTEDIT".to_string()),
|
|
|
|
|
}),
|
|
|
|
|
RibbonItem::Tool(crate::modules::ToolDef {
|
|
|
|
|
id: "SYNCPVIEWPORTS",
|
|
|
|
|
label: "Sync Scales",
|
|
|
|
|
icon: crate::modules::IconKind::Glyph("⇄"),
|
|
|
|
|
event: crate::modules::ModuleEvent::Command("SYNCPVIEWPORTS".to_string()),
|
|
|
|
|
}),
|
|
|
|
|
],
|
|
|
|
|
},
|
2026-03-22 14:56:27 +03:00
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
}
|