Feat: add Dimension Style Manager dialog (DIMSTYLE/DDIM)
- Add DimStyleDialogOpen/Close/Apply/Select/Tab/New/SetCurrent/Delete messages and DsEdit/DsToggle with DsField enum for fine-grained edits - Store active dialog state (selected style, current tab, edit buffers) directly on H7CAD for all 28 most-used DimStyle properties - dimstyle_overlay: 5-tab modal panel (Lines, Arrows, Text, Scale/Units, Tolerances) with style list, Apply and Close buttons - DIMSTYLE / DDIM with no sub-command now opens the dialog; DIMSTYLE LIST / NEW / SET sub-commands remain available Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
20629d587a
commit
911e36ba04
4 changed files with 519 additions and 2 deletions
|
|
@ -2090,7 +2090,11 @@ impl H7CAD {
|
|||
let parts: Vec<&str> = raw_rest.split_whitespace().collect();
|
||||
let sub = parts.get(0).map(|s| s.to_uppercase()).unwrap_or_default();
|
||||
match sub.as_str() {
|
||||
"" | "LIST" | "?" => {
|
||||
// No sub-command or "DIALOG" → open the DimStyle Manager dialog
|
||||
"" | "DIALOG" | "UI" => {
|
||||
return Task::done(Message::DimStyleDialogOpen);
|
||||
}
|
||||
"LIST" | "?" => {
|
||||
let styles: Vec<String> = self.tabs[i].scene.document
|
||||
.dim_styles.iter()
|
||||
.map(|s| format!("{}(txt:{:.2} asz:{:.2})", s.name, s.dimtxt, s.dimasz))
|
||||
|
|
|
|||
Loading…
Reference in a new issue