feat(textstyle): full Text Style editor — big/TT font, fixed height, flags, annotative

Expands the Text Style manager beyond font/width/oblique: big-font and
TrueType font fields, fixed text height, Backward / Upside-down flags, and
an Annotative toggle (applied live). Bumps acadrust for the annotative
field.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Hakan Seven 2026-06-03 17:43:12 +03:00
commit 52850947d2
5 changed files with 131 additions and 39 deletions

View file

@ -305,6 +305,12 @@ pub(super) struct OpenCADStudio {
textstyle_width: String,
/// Edit buffer for oblique angle (degrees).
textstyle_oblique: String,
/// Edit buffer for fixed text height (0 = variable).
textstyle_height: String,
/// Edit buffer for big-font file name.
textstyle_bigfont: String,
/// Edit buffer for TrueType font name.
textstyle_ttf: String,
// ── Color Scheme ──────────────────────────────────────────────────────
active_theme: Theme,
@ -880,6 +886,9 @@ pub enum Message {
TextStyleApply,
/// Select a font from the built-in font list.
TextStyleFontPick(String),
/// Flip a boolean flag on the selected text style (backward / upside_down /
/// vertical / annotative), applied immediately.
TextStyleToggle(&'static str),
// ── TableStyle Dialog ─────────────────────────────────────────────────
TableStyleDialogOpen,
#[allow(dead_code)]
@ -1053,6 +1062,9 @@ impl OpenCADStudio {
textstyle_font: String::new(),
textstyle_width: "1.0".to_string(),
textstyle_oblique: "0.0".to_string(),
textstyle_height: "0.0".to_string(),
textstyle_bigfont: String::new(),
textstyle_ttf: String::new(),
// TableStyle dialog
tablestyle_selected: "Standard".to_string(),
// MLineStyle dialog