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
//! Docking system for resizable split panels and tabbed containers.
//!
//! This module provides a minimal docking system with:
//! - **DockSplitter**: Resizable split container with a draggable separator
//! - **DockTabs**: Tabbed container showing one panel at a time
//! - **Drag System**: Extended event handling for drag operations
//!
//! # Quick Start
//!
//! ```ignore
//! use astrelis_ui::UiSystem;
//!
//! ui.build(|root| {
//! root.hsplit()
//! .width(800.0)
//! .height(600.0)
//! .split_ratio(0.3)
//! .first(|left| {
//! left.dock_tabs()
//! .tab("Explorer", |t| {
//! t.text("File tree...").build()
//! })
//! .tab("Search", |t| {
//! t.text("Search panel...").build()
//! })
//! .build()
//! })
//! .second(|right| {
//! right.vsplit()
//! .split_ratio(0.6)
//! .first(|top| top.text("Top panel").build())
//! .second(|bottom| bottom.text("Bottom panel").build())
//! .build()
//! })
//! .build();
//! });
//! ```
// Re-export main types
pub use ;
pub use DockSplitter;
pub use ;
pub use DragManager;