lgui-core 0.2.0

Platform-neutral runtime and UI primitives for LGUI
Documentation
use super::{
    apply_events_to_animations, AnimProperty, AnimationRegistry, CompositingLayerSpec,
    DeclarativeView, DirtyTracker, HostTree, InputEvent, InteractionFlags, KeyState, LogicalKey,
    NamedKey, SemanticAction, UiAction, UiActionEvent, UiAsyncContext, UiElement, UiEvent,
    UiEventDispatcher, UiEventPayload, UiHandlerEvent, UiId, UiIdPath, UiInteractionState, UiRect,
    UiScale, UiTaskSpawner, POINTER_DOWN_ACTION, POINTER_DRAG_ACTION, POINTER_UP_ACTION,
};
#[cfg(feature = "async")]
use super::{noop_task_spawner, task};

mod component_state;
mod component_tree;
mod context;
mod context_value;
mod effect;
mod hook_state;
mod observable;
mod reactor;
mod runtime;
mod scope;

pub use component_state::{
    ComponentActionOutcome, ComponentState, ComponentStateStore, CompositingLayerAnimation,
};
pub use component_tree::{
    ComponentId, ComponentRuntimeMetrics, ComponentTree, HookId, HookSlotKind,
};
pub use context::UiRenderContext;
pub(crate) use context_value::stage_current_listener;
pub use context_value::{try_use_context, use_context, ContextProviderGuard, ContextRegistry};
pub use effect::{EffectRegistry, IntoEffectCleanup, UiEffect};
pub use hook_state::{HookStateStore, UiUpdateQueue, UiWake};
pub use observable::{Observable, ObservableListener};
pub use reactor::{RenderCx, State, StateSetter, UiFocusHandle};
pub use runtime::{PendingUpdateOutput, RuntimeOutput, UiDefaultAction, UiRuntime};
pub use scope::UiScope;