1#![allow(clippy::type_complexity)]
4#![allow(clippy::single_match)]
6#![allow(clippy::enum_variant_names)]
8#![allow(clippy::only_used_in_recursion)]
9#![allow(clippy::uninlined_format_args)]
10#![allow(clippy::collapsible_match)]
11#![allow(clippy::new_ret_no_self)]
12#![allow(mismatched_lifetime_syntaxes)]
13extern crate self as vizia;
16
17pub(crate) mod accessibility;
18pub mod animation;
19pub mod binding;
20#[doc(hidden)]
21pub(crate) mod cache;
22pub mod context;
23#[doc(hidden)]
24pub(crate) mod entity;
25pub mod environment;
26pub mod events;
27pub mod input;
28pub mod layout;
29pub mod localization;
30pub mod model;
31pub mod modifiers;
32pub mod resource;
33pub mod style;
34pub(crate) mod systems;
35pub(crate) mod text;
36#[doc(hidden)]
37pub mod tree;
38pub mod util;
40pub mod view;
41pub mod views;
42pub mod window;
43
44mod storage;
45
46pub mod vg {
48 pub use skia_safe::*;
49}
50
51pub mod icons;
53
54#[doc(hidden)]
55pub mod backend {
56 pub use super::accessibility::IntoNode;
57 pub use super::context::backend::BackendContext;
58 pub use vizia_window::WindowDescription;
59}
60
61#[doc(hidden)]
63pub mod prelude {
64 pub use super::binding::{Binding, Res};
65
66 pub use vizia_reactive::{
67 Effect, Memo, ReadSignal, Runtime, Signal, SignalGet, SignalMap, SignalRead, SignalTrack,
68 SignalUpdate, SignalWith, SignalWrite, SyncDerivedSignal, SyncReadSignal, SyncSignal,
69 SyncWriteSignal, UpdaterEffect, WriteSignal,
70 };
71
72 pub use super::{impl_res_clone, impl_res_simple};
73
74 pub use crate::model::Model;
75
76 pub use super::animation::{Animation, AnimationBuilder, KeyframeBuilder};
77 pub use super::context::{
78 AccessContext, AccessNode, Context, ContextProxy, DataContext, DrawContext, EmitContext,
79 EventContext, ProxyEmitError, WindowState,
80 };
81 pub use super::entity::Entity;
82 pub use super::environment::{Environment, EnvironmentEvent, ThemeMode};
83 pub use super::events::{Event, Propagation, Timer, TimerAction};
84 pub use super::include_style;
85 pub use super::input::{Keymap, KeymapEntry, KeymapEvent};
86 pub use super::layout::{BoundingBox, GeoChanged};
87 pub use super::localization::{Localized, ToStringLocalized, number_with_fraction, percentage};
88 pub use super::modifiers::{
89 AbilityModifiers, AccessibilityModifiers, ActionModifiers, ControlModifiers, ControlSize,
90 LayoutModifiers, LinearGradientBuilder, ShadowBuilder, StyleModifiers, TextModifiers,
91 };
92 pub use super::resource::{ImageId, ImageRetentionPolicy};
93 pub use super::util::{CSS, IntoCssStr};
94 pub use super::view::{Handle, View};
95 pub use super::views::*;
96 pub use super::window::{DropData, WindowEvent};
97 pub use accesskit::{Action, Live, Role};
98 pub use skia_safe::Canvas;
99 pub use vizia_id::GenerationalId;
100 pub use vizia_input::{Code, Key, KeyChord, Modifiers, MouseButton, MouseButtonState};
101 pub use vizia_storage::{Tree, TreeExt};
102 pub use vizia_window::{Anchor, AnchorTarget, WindowButtons, WindowPosition, WindowSize};
103
104 pub use super::style::*;
105
106 pub use morphorm::Units::*;
107 pub use morphorm::{LayoutType, PositionType, Units};
108 pub use unic_langid::{LanguageIdentifier, langid};
109 pub use web_time::{Duration, Instant};
110}