druid_widget_nursery/
lib.rs

1// Copyright 2018 The Druid Authors.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15//! A collection of widgets for the druid GUI framework
16
17#![allow(clippy::new_ret_no_self)]
18
19pub mod animation;
20mod autofocus;
21mod canvas;
22mod computed;
23mod configure_env;
24mod context_traits;
25pub mod dropdown;
26mod dropdown_select;
27mod dyn_lens;
28mod dynamic_sized_box;
29pub mod enum_switcher;
30mod list_select;
31#[macro_use]
32mod macros;
33mod advanced_slider;
34mod mask;
35mod multi_value;
36pub mod navigator;
37mod on_change;
38mod on_cmd;
39mod on_monitor;
40pub mod prism;
41mod progress_bar;
42mod separator;
43pub mod splits;
44mod stack;
45pub mod stack_tooltip;
46pub mod table;
47pub mod theme_loader;
48mod titlebar;
49mod tooltip;
50pub mod tree;
51mod versioned;
52pub mod wedge;
53mod widget_ext;
54pub mod wrap;
55
56#[cfg(feature = "material-icons")]
57pub mod material_icons;
58
59#[cfg(feature = "async")]
60mod future_widget;
61
62#[cfg(feature = "hot-reload")]
63pub mod hot_reload;
64mod list_filter;
65
66pub use advanced_slider::AdvancedSlider;
67pub use autofocus::AutoFocus;
68pub use canvas::{Canvas, CanvasLayout, CanvasWrap};
69pub use computed::ComputedWidget;
70pub use configure_env::configure_env;
71pub use context_traits::{AnyCtx, CommandCtx, CursorCtx, LaidOutCtx, RequestCtx};
72pub use dropdown::Dropdown;
73pub use dropdown_select::DropdownSelect;
74pub use dyn_lens::DynLens;
75pub use dynamic_sized_box::DynamicSizedBox;
76pub use list_filter::{FilterIter, ListFilter};
77pub use list_select::ListSelect;
78pub use mask::Mask;
79pub use multi_value::{MultiCheckbox, MultiRadio};
80pub use on_change::OnChange;
81pub use on_cmd::OnCmd;
82pub use on_monitor::OnMonitor;
83pub use progress_bar::ProgressBar;
84pub use separator::{Orientation, Separator};
85pub use stack::{Stack, StackChildParams, StackChildPosition};
86pub use titlebar::TitleBar;
87pub use tooltip::TooltipController;
88pub use tree::{Tree, TreeNode, TREE_NODE_REMOVE};
89pub use versioned::Versioned;
90pub use wedge::Wedge;
91pub use widget_ext::WidgetExt;
92
93#[cfg(feature = "async")]
94pub use future_widget::FutureWidget;