feat: MLEADERSTYLE command — create and manage MultiLeader styles

Stores MultiLeaderStyle objects in document.objects. Supports:
  MLEADERSTYLE LIST — list all styles
  MLEADERSTYLE NEW <name> — create a new style
  MLEADERSTYLE SET <name> <prop> <val> — edit text_height,
    arrowhead_size, landing_distance, landing_gap
  MLEADERSTYLE CURRENT [<name>] — get/set active style

Active style name tracked per-tab in active_mleader_style.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Sonnet 4.6 committed 2026-04-08 18:13:21 +03:00
1 parent 1d349c53af
commit 1fceec92ea
2 files changed
+97

No files matched your search

+3
View File
@@ -40,6 +40,8 @@ pub(super) struct DocumentTab {
pub(super) paper_bg_color: Option<[f32; 4]>,
/// Active REFEDIT session, if any.
pub(super) refedit_session: Option<RefEditSession>,
/// Currently active MLeader style name.
pub(super) active_mleader_style: String,
}
impl DocumentTab {
@@ -69,6 +71,7 @@ impl DocumentTab {
bg_color: None,
paper_bg_color: None,
refedit_session: None,
active_mleader_style: "Standard".to_string(),
}
}