Skip to main content

sequoia_elements/
lib.rs

1#![forbid(unsafe_code)]
2
3mod avatar;
4mod badge;
5mod buffer;
6mod button;
7mod checkbox;
8mod chip;
9mod clipboard;
10pub mod color_picker;
11mod command;
12mod container;
13mod context_menu;
14mod dialog;
15mod divider;
16mod drag_value;
17mod draggable;
18mod drawer;
19mod dropdown;
20mod droppable;
21mod floating_menu;
22mod form;
23mod kbd;
24mod modal;
25mod popup;
26pub mod primitives;
27mod progress;
28mod radio;
29mod resize_handle;
30mod sheet;
31pub mod slider;
32pub mod slider1d;
33mod svpad;
34mod switch;
35mod tab_strip;
36mod text_area;
37mod text_field;
38mod toast;
39mod tooltip;
40mod underline;
41mod window_controls;
42
43pub use avatar::{Avatar, avatar_color_for, initials_for};
44pub use badge::{Badge, badge_label};
45pub use button::{BUTTON_BLEND_RATE, Button};
46pub use checkbox::Checkbox;
47pub use chip::{Chip, remove_hit_rect};
48pub use clipboard::{Clipboard, DataClipboard, MemClipboard, SharedClipboard, SharedDataClipboard};
49pub use color_picker::{ColorPicker, PIPETTE_SVG, Picker, PickerFloat};
50pub use command::{Command, CommandPalette, CommandRegistry, MenuBar};
51pub use container::{ClickTrigger, Container};
52pub use context_menu::ContextMenu;
53pub use dialog::Dialog;
54pub use divider::{Divider, DividerAxis, divider_line_rect};
55pub use drag_value::DragValue;
56pub use draggable::Draggable;
57pub use drawer::{Drawer, DrawerSide};
58pub use dropdown::DropdownButton;
59pub use droppable::Droppable;
60pub use floating_menu::{CustomMenuItem, FloatingMenu, MENU_WIDTH, MenuItem};
61pub use form::{DateField, Field, Form, MultiSelect, NumberField, ValidField, parse_iso_date};
62pub use kbd::Kbd;
63pub use modal::{DEFAULT_SCRIM, Modal, ModalScrim};
64pub use popup::PopupState;
65pub use primitives::{Deco, PRESS_BLEND_RATE};
66pub use progress::{ProgressBar, Skeleton, Spinner};
67pub use radio::{RadioButton, RadioGroup};
68pub use resize_handle::ResizeHandle;
69pub use sequoia_style::{
70    AvatarStyle, BadgeStyle, ButtonStyle, CheckboxStyle, ChipStyle, ContextMenuStyle,
71    DIALOG_DANGER, DialogStyle, DividerStyle, DragValueStyle, DrawerStyle, FORM_ERROR, FormStyle,
72    KbdStyle, ModalStyle, RadioStyle, ResizeHandleStyle, SheetStyle, SliderStyle, SplitPanelStyle,
73    SwitchStyle, TableStyle, TextAreaStyle, TextFieldStyle, ToastStyle, TooltipStyle, TreeStyle,
74};
75pub use sheet::{Sheet, SheetSide};
76pub use slider::{FILL_COLOR, Slider, THUMB_CENTER, THUMB_OUTLINE, TRACK_COLOR};
77pub use slider1d::{
78    HEIGHT as SLIDER1D_HEIGHT, KNOB_R as SLIDER1D_KNOB_R, Slider1D, TRACK_H as SLIDER1D_TRACK_H,
79};
80pub use svpad::{HEIGHT as SVPAD_HEIGHT, KNOB_R as SVPAD_KNOB_R, SvPad};
81pub use switch::Switch;
82pub use tab_strip::{TabStrip, TabTear};
83pub use text_area::TextArea;
84pub use text_field::TextField;
85pub use toast::{DEFAULT_MAX_VISIBLE, DEFAULT_TTL, Toast, ToastKind, ToastQueue, ToastStack};
86pub use tooltip::Tooltip;
87pub use window_controls::WindowControls;
88
89pub mod prelude {
90    pub use crate::avatar::{Avatar, avatar_color_for, initials_for};
91    pub use crate::badge::{Badge, badge_label};
92    pub use crate::button::Button;
93    pub use crate::checkbox::Checkbox;
94    pub use crate::chip::{Chip, remove_hit_rect};
95    pub use crate::clipboard::{
96        Clipboard, DataClipboard, MemClipboard, SharedClipboard, SharedDataClipboard,
97    };
98    pub use crate::color_picker::{ColorPicker, PIPETTE_SVG, Picker, PickerFloat};
99    pub use crate::command::{Command, CommandPalette, CommandRegistry, MenuBar};
100    pub use crate::container::{ClickTrigger, Container};
101    pub use crate::context_menu::ContextMenu;
102    pub use crate::dialog::Dialog;
103    pub use crate::divider::{Divider, DividerAxis, divider_line_rect};
104    pub use crate::drag_value::DragValue;
105    pub use crate::draggable::Draggable;
106    pub use crate::drawer::{Drawer, DrawerSide};
107    pub use crate::dropdown::DropdownButton;
108    pub use crate::droppable::Droppable;
109    pub use crate::floating_menu::{CustomMenuItem, FloatingMenu, MenuItem};
110    pub use crate::form::{DateField, Field, Form, MultiSelect, NumberField, ValidField};
111    pub use crate::kbd::Kbd;
112    pub use crate::modal::{Modal, ModalScrim};
113    pub use crate::popup::PopupState;
114    pub use crate::primitives::{Deco, PRESS_BLEND_RATE};
115    pub use crate::progress::{ProgressBar, Skeleton, Spinner};
116    pub use crate::radio::{RadioButton, RadioGroup};
117    pub use crate::resize_handle::ResizeHandle;
118    pub use crate::sheet::{Sheet, SheetSide};
119    pub use crate::slider::{FILL_COLOR, Slider, THUMB_CENTER, THUMB_OUTLINE, TRACK_COLOR};
120    pub use crate::slider1d::Slider1D;
121    pub use crate::svpad::SvPad;
122    pub use crate::switch::Switch;
123    pub use crate::tab_strip::{TabStrip, TabTear};
124    pub use crate::text_area::TextArea;
125    pub use crate::text_field::TextField;
126    pub use crate::toast::{Toast, ToastKind, ToastQueue, ToastStack};
127    pub use crate::tooltip::Tooltip;
128    pub use crate::window_controls::WindowControls;
129    pub use sequoia_input::{
130        CursorIcon, Event, EventPhase, Key, KeyEvent, Modifiers, PointerButton, PointerEvent,
131    };
132    pub use sequoia_layout::{Axis, ContainerStyle, Indents, LayoutCtx, LayoutStyle};
133    pub use sequoia_style::{
134        AvatarStyle, BadgeStyle, ButtonStyle, CheckboxStyle, ChipStyle, ContextMenuStyle,
135        DIALOG_DANGER, DialogStyle, DividerStyle, DragValueStyle, DrawerStyle, FORM_ERROR,
136        FormStyle, KbdStyle, ModalStyle, RadioStyle, ResizeHandleStyle, SheetStyle, SliderStyle,
137        SplitPanelStyle, SwitchStyle, TableStyle, TextAreaStyle, TextFieldStyle, ToastStyle,
138        TooltipStyle, TreeStyle,
139    };
140    pub use sequoia_view::prelude::*;
141}