ashlar-ui 0.2.0

ashlar UI components: theme tokens, controls, layout, docking, icons
Documentation
#![deny(clippy::unwrap_used, clippy::expect_used, clippy::panic, clippy::unimplemented, clippy::todo, clippy::unreachable)]

//! General-purpose egui components for ashlar apps.
//!
//! - Theme: [`tokens`] (design tokens, light/dark/system, interface scale), [`fonts`] (install
//!   app-supplied faces with a CJK fallback chain), [`theme`] (widget-state colouring).
//! - Inputs: [`value_field`] (drag/scrub and formatted numeric fields), [`slider`] (slider, knob),
//!   [`swatches`], [`search`], [`buttons`], [`tabs`]; all value edits report [`edit`] phases.
//! - Text: [`markdown`] (chat replies and short documents, streaming-safe), [`code_view`],
//!   [`diff_view`] (unified and split diffs of [`ashlar_diff`] files).
//! - Data: [`virtual_list`] (list and table, O(visible) per frame), [`tree`].
//! - Shell: [`dialog`], [`toasts`], [`status_bar`], [`layout`], [`docking`], [`printing`], [`labels`] (every built-in string, localizable).
//! - Commands: [`commands`] (menu model and bar, palette, keymap editor, key dispatch).
//! - Infrastructure: [`automation`] (ids and rects for `ui.inspect`/`ui.click`), [`devtools`]
//!   (the UI debugger: element tree with refs, injected input, waits, screenshots, inspector), [`cache`]
//!   (revision-keyed galleys and meshes), [`motion`] (animated values that idle when settled),
//!   [`wake`] (frame requests with a reason, per-reason
//!   frame counts), [`idle`] (trim caches when idle or in the background; memory and frame-rate
//!   readouts).
//!
//! Apps own their data, selection, assets and command handling: components take state by
//! reference and report what the user asked for. Domain widgets (timelines, canvases) stay in the
//! apps and are built from these pieces.

pub mod automation;
pub mod buttons;
pub mod cache;
pub mod chat;
pub mod code_view;
pub mod commands;
pub mod content;
pub mod controls;
pub mod devtools;
pub mod dialog;
pub mod diff_view;
pub mod docking;
pub mod edit;
pub mod fonts;
pub mod form;
pub(crate) mod hscroll;
pub mod icons;
pub mod idle;
pub mod labels;
pub mod layout;
pub mod list;
pub mod markdown;
pub mod motion;
pub mod motion_gate;
pub mod overlay;
pub mod printing;
pub mod rolling;
pub mod search;
pub mod selection;
pub mod sidebar;
pub mod slider;
pub mod status_bar;
pub mod swatches;
pub mod tabs;
#[cfg(feature = "telemetry")]
pub mod telemetry;
pub mod theme;
pub mod toasts;
pub mod tokens;
pub mod tree;
pub mod value_field;
pub mod virtual_list;
pub mod wake;

pub use overlay::help;

#[cfg(test)]
pub(crate) mod test_support;