leftwm_core/
models.rs

1//! Objects (such as windows) used to develop `LeftWM`.
2mod dock_area;
3mod focus_manager;
4mod gutter;
5mod manager;
6mod margins;
7mod mode;
8mod scratchpad;
9mod screen;
10mod size;
11mod tag;
12mod window;
13mod window_change;
14mod window_state;
15mod window_type;
16mod workspace;
17mod xyhw;
18mod xyhw_change;
19
20pub mod dto;
21
22pub use dock_area::DockArea;
23pub use focus_manager::FocusBehaviour;
24pub use focus_manager::FocusManager;
25pub use focus_manager::FocusOnActivationBehaviour;
26pub use gutter::Gutter;
27pub use gutter::Side;
28pub use manager::Manager;
29pub use margins::Margins;
30pub use mode::Mode;
31pub use scratchpad::{ScratchPad, ScratchPadName};
32pub use screen::{BBox, Screen};
33pub use size::Size;
34pub use window::Handle;
35#[cfg(test)]
36pub(crate) use window::MockHandle;
37pub use window::Window;
38pub use window::WindowHandle;
39pub use window_change::WindowChange;
40pub use window_state::WindowState;
41pub use window_type::WindowType;
42pub use workspace::Workspace;
43pub use xyhw::Xyhw;
44pub use xyhw::XyhwBuilder;
45pub use xyhw_change::XyhwChange;
46
47pub use tag::Tag;
48pub use tag::Tags;
49
50pub type TagId = usize;
51pub type WorkspaceId = usize;
52type MaybeWindowHandle<H> = Option<WindowHandle<H>>;