Files
ruin/lib/ui/src/lib.rs

33 lines
1.1 KiB
Rust

//! Shared explicit-construction UI substrate for RUIN.
//!
//! This crate intentionally starts with explicit Rust data construction rather than a proc-macro
//! authoring layer. The goal is to validate the threading, windowing, and scene handoff model
//! before committing to ergonomic surface syntax. Concrete platform and renderer backends live in
//! sibling crates.
pub(crate) mod trace_targets {
pub const PLATFORM: &str = "ruin_ui::platform";
pub const SCENE: &str = "ruin_ui::scene";
}
mod layout;
mod platform;
mod runtime;
mod scene;
mod text;
mod tree;
mod window;
pub use layout::{layout_scene, layout_scene_with_text_system};
pub use platform::{PlatformClosed, PlatformEvent, PlatformProxy, PlatformRuntime, start_headless};
pub use runtime::{EventStreamClosed, UiRuntime, WindowController};
pub use scene::{
Color, DisplayItem, GlyphInstance, Point, PreparedText, Quad, Rect, SceneSnapshot, Translation,
UiSize,
};
pub use text::{TextAlign, TextStyle, TextSystem, TextWrap};
pub use tree::{Edges, Element, FlexDirection, Style};
pub use window::{
DecorationMode, WindowConfigured, WindowId, WindowLifecycle, WindowSpec, WindowUpdate,
};