Skip to main content

iced_ui/
lib.rs

1//! `iced_ui` — a component library built on top of [iced].
2//!
3//! This crate currently provides:
4//!
5//! - [`MenuBar`] — a horizontal top-of-app menu bar with dropdowns,
6//!   nested submenus, keyboard shortcuts and a pluggable style.
7//! - [`Card`] — a rounded-corner presentational container with a flat
8//!   or elevated (drop-shadowed) variant, and optional background
9//!   color or image.
10//! - [`list::List`] — a vertical list of interactive items with
11//!   hover/press feedback, suitable for navigation sidebars and
12//!   selection lists.
13//!
14//! [iced]: https://github.com/iced-rs/iced
15
16#![warn(missing_docs)]
17
18pub mod badge;
19pub mod button;
20pub mod card;
21pub mod chip;
22pub mod color_picker;
23pub mod date_input;
24mod date_time_core;
25pub mod datetime_input;
26pub mod dialog;
27pub mod divider;
28pub mod fab;
29pub mod icon_button;
30#[cfg(feature = "lucide-icons")]
31pub mod icons;
32pub mod list;
33pub mod menu;
34pub mod native;
35pub mod navigation_bar;
36pub mod navigation_drawer;
37pub mod navigation_rail;
38pub mod number_input;
39pub mod position;
40pub mod screen;
41pub mod segmented_button;
42pub mod slide_sheet;
43pub mod snackbar;
44pub mod tabs;
45pub mod text;
46pub mod text_input;
47pub mod theme;
48pub mod time_input;
49pub mod top_app_bar;
50
51pub use chrono;
52
53pub use badge::Badge;
54pub use button::Button;
55pub use card::{Card, Variant};
56pub use chip::Chip;
57pub use color_picker::ColorPicker;
58pub use date_input::DateInput;
59pub use datetime_input::DateTimeInput;
60pub use dialog::Dialog;
61pub use divider::Divider;
62pub use fab::Fab;
63pub use icon_button::IconButton;
64pub use menu::{
65    Catalog, Icon, Item, KeyBinding, Menu, MenuBar, MenuButton, Separator, Style, StyleFn, default,
66    shortcuts,
67};
68pub use native::native;
69pub use navigation_bar::NavigationBar;
70pub use navigation_drawer::NavigationDrawer;
71pub use navigation_rail::NavigationRail;
72pub use number_input::NumberInput;
73pub use position::Position;
74pub use screen::Screen;
75pub use segmented_button::{Segment, SegmentedButton};
76pub use slide_sheet::SlideSheet;
77pub use snackbar::{Notification, NotificationId, Notifications, Snackbar};
78pub use tabs::Tabs;
79pub use text::Text;
80pub use text_input::TextInput;
81pub use theme::{
82    FontSize, FontSizeBase, Information, PaddingSource, Paper, Roundness, RoundnessBase, Space,
83    SpacingBase, Theme,
84};
85pub use time_input::TimeInput;
86pub use top_app_bar::TopAppBar;