Server: ThemeConfig entity + CRUD (GET/PUT /theme), SQLite persistence, ThemeUpdate broadcast to ESP32 on save and initial connect. Client: render engine uses theme colors, full-screen redraw on theme change. SPA: theme page with color pickers + presets, layout preview with TS port of layout engine, justify/align controls on containers. DisplayHint refactored to struct (kind + h_align + v_align).
27 lines
709 B
Rust
27 lines
709 B
Rust
mod alignment;
|
|
mod bounding_box;
|
|
mod color;
|
|
mod font;
|
|
mod layout_engine;
|
|
mod markup;
|
|
pub mod ports;
|
|
mod render_engine;
|
|
mod render_tree;
|
|
mod scroll;
|
|
mod text_layout;
|
|
mod theme;
|
|
|
|
pub use alignment::align_offset;
|
|
pub use bounding_box::BoundingBox;
|
|
pub use color::Color;
|
|
pub use domain::{AlignItems, DisplayHintKind, HAlign, JustifyContent, VAlign};
|
|
pub use font::{FontMetrics, FontSize};
|
|
pub use layout_engine::LayoutEngine;
|
|
pub use markup::{TextSpan, parse_markup};
|
|
pub use ports::{ClientConfig, DisplayPort, NetworkPort, StoragePort};
|
|
pub use render_engine::{DrawCommand, RenderEngine};
|
|
pub use render_tree::RenderTree;
|
|
pub use scroll::ScrollState;
|
|
pub use text_layout::wrap_lines;
|
|
pub use theme::ThemeConfig;
|