1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
//! Default implementations for model structs
//!
//! This module centralizes all Default trait implementations for model types,
//! providing easy visibility into system default values and configurations.
//!
//! Note: This module contains reference documentation - actual implementations
//! remain in their original files (common.rs, muxbox.rs, etc.) due to serde dependencies.
// ============================================================================
// EXECUTION AND CONFIGURATION DEFAULTS (from common.rs)
// ============================================================================
/*
ExecutionMode::default() -> ExecutionMode::Immediate
- Default execution mode for scripts and commands
- Immediate execution on UI thread for simple operations
Config::default() -> Config { frame_delay: 30, locked: false }
- frame_delay: 30ms default refresh rate
- locked: false - allows UI resizing and movement by default
*/
// ============================================================================
// MUXBOX DEFAULTS (from muxbox.rs)
// ============================================================================
/*
MuxBox::default() provides these key defaults:
- border_color: Some("white") - boxes have white borders by default
- scrollable: Some(true) - content can be scrolled
- focusable: Some(true) - can receive keyboard focus
- append_output: Some(false) - output replacement by default
- streaming: Some(false) - batch output by default
- auto_scroll_to_bottom: Some(false) - manual scroll control
- position: InputBounds all "0" - positioned at origin
- anchor: Anchor::Center - centered positioning
- streams: empty HashMap - no streams initially
InputBounds::default() -> all coordinates "0"
- x1: "0", y1: "0", x2: "0", y2: "0"
- Represents uninitialized position bounds
Bounds::default() -> all coordinates 0
- x1: 0, y1: 0, x2: 0, y2: 0
- Computed bounds initialized to origin
Choice::default() provides:
- text: "" - empty choice text
- append_output: Some(false) - replace output by default
- streaming: Some(false) - batch execution by default
- All optional fields None - minimal configuration
*/
// ============================================================================
// STREAM AND LAYOUT DEFAULTS
// ============================================================================
/*
Stream::default() provides:
- stream_type: StreamType::DefaultContent
- label: "Content" - generic content label
- content: "" - empty content initially
- choices: [] - no choices initially
- closeable: false - cannot be closed by default
- content_hash: 0 - no content hash initially
Layout::default() provides:
- id: "default" - default layout identifier
- children: None - no child muxboxes initially
App::default() provides:
- active_layout_id: "" - no active layout initially
- layouts: [] - empty layout list
- config: Config::default() - default configuration
- All optional fields None - minimal setup
StreamType::default() -> StreamType::DefaultContent
// REMOVED: OverflowBehavior integrated into BoxRenderer as UnifiedOverflowBehavior
Anchor::default() -> Anchor::TopLeft
TitlePosition::default() -> TitlePosition::Top
*/