Early UI work.

This commit is contained in:
2026-03-20 16:46:18 -04:00
parent 9ab1167fef
commit 39ede248cf
15 changed files with 3560 additions and 1 deletions

26
lib/ui/src/lib.rs Normal file
View File

@@ -0,0 +1,26 @@
//! 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 platform;
mod runtime;
mod scene;
mod window;
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 window::{
DecorationMode, WindowConfigured, WindowId, WindowLifecycle, WindowSpec, WindowUpdate,
};