raui_material/
lib.rs

1//! Theme-able RAUI components
2
3pub mod component;
4pub mod theme;
5
6use raui_core::{application::Application, widget::FnWidget};
7
8pub fn setup(app: &mut Application) {
9    app.register_props::<component::containers::context_paper::ContextPaperProps>(
10        "ContextPaperProps",
11    );
12    app.register_props::<component::containers::modal_paper::ModalPaperProps>("ModalPaperProps");
13    app.register_props::<component::containers::paper::PaperProps>("PaperProps");
14    app.register_props::<component::containers::paper::PaperContentLayoutProps>(
15        "PaperContentLayoutProps",
16    );
17    app.register_props::<component::containers::tooltip_paper::TooltipPaperProps>(
18        "TooltipPaperProps",
19    );
20    app.register_props::<component::containers::scroll_paper::SideScrollbarsPaperProps>(
21        "SideScrollbarsPaperProps",
22    );
23    app.register_props::<component::containers::window_paper::WindowPaperProps>("WindowPaperProps");
24    app.register_props::<component::icon_paper::IconPaperProps>("IconPaperProps");
25    app.register_props::<component::interactive::button_paper::ButtonPaperOverrideStyle>(
26        "ButtonPaperOverrideStyle",
27    );
28    app.register_props::<component::interactive::slider_paper::SliderPaperProps>(
29        "SliderPaperProps",
30    );
31    app.register_props::<component::interactive::slider_paper::NumericSliderPaperProps>(
32        "NumericSliderPaperProps",
33    );
34    app.register_props::<component::interactive::text_field_paper::TextFieldPaperProps>(
35        "TextFieldPaperProps",
36    );
37    app.register_props::<component::switch_paper::SwitchPaperProps>("SwitchPaperProps");
38    app.register_props::<component::text_paper::TextPaperProps>("TextPaperProps");
39    app.register_props::<theme::ThemedWidgetProps>("ThemedWidgetProps");
40    app.register_props::<theme::ThemeProps>("ThemeProps");
41
42    app.register_component(
43        "context_paper",
44        FnWidget::pointer(component::containers::context_paper::context_paper),
45    );
46    app.register_component(
47        "nav_flex_paper",
48        FnWidget::pointer(component::containers::flex_paper::nav_flex_paper),
49    );
50    app.register_component(
51        "flex_paper",
52        FnWidget::pointer(component::containers::flex_paper::flex_paper),
53    );
54    app.register_component(
55        "nav_grid_paper",
56        FnWidget::pointer(component::containers::grid_paper::nav_grid_paper),
57    );
58    app.register_component(
59        "grid_paper",
60        FnWidget::pointer(component::containers::grid_paper::grid_paper),
61    );
62    app.register_component(
63        "nav_horizontal_paper",
64        FnWidget::pointer(component::containers::horizontal_paper::nav_horizontal_paper),
65    );
66    app.register_component(
67        "horizontal_paper",
68        FnWidget::pointer(component::containers::horizontal_paper::horizontal_paper),
69    );
70    app.register_component(
71        "modal_paper",
72        FnWidget::pointer(component::containers::modal_paper::modal_paper),
73    );
74    app.register_component(
75        "paper",
76        FnWidget::pointer(component::containers::paper::paper),
77    );
78    app.register_component(
79        "scroll_paper",
80        FnWidget::pointer(component::containers::scroll_paper::scroll_paper),
81    );
82    app.register_component(
83        "scroll_paper_side_scrollbars",
84        FnWidget::pointer(component::containers::scroll_paper::scroll_paper_side_scrollbars),
85    );
86    app.register_component(
87        "text_tooltip_paper",
88        FnWidget::pointer(component::containers::text_tooltip_paper::text_tooltip_paper),
89    );
90    app.register_component(
91        "tooltip_paper",
92        FnWidget::pointer(component::containers::tooltip_paper::tooltip_paper),
93    );
94    app.register_component(
95        "nav_vertical_paper",
96        FnWidget::pointer(component::containers::vertical_paper::nav_vertical_paper),
97    );
98    app.register_component(
99        "vertical_paper",
100        FnWidget::pointer(component::containers::vertical_paper::vertical_paper),
101    );
102    app.register_component(
103        "window_paper",
104        FnWidget::pointer(component::containers::window_paper::window_paper),
105    );
106    app.register_component(
107        "window_title_controls_paper",
108        FnWidget::pointer(component::containers::window_paper::window_title_controls_paper),
109    );
110    app.register_component(
111        "wrap_paper",
112        FnWidget::pointer(component::containers::wrap_paper::wrap_paper),
113    );
114    app.register_component(
115        "icon_paper",
116        FnWidget::pointer(component::icon_paper::icon_paper),
117    );
118    app.register_component(
119        "button_paper",
120        FnWidget::pointer(component::interactive::button_paper::button_paper),
121    );
122    app.register_component(
123        "icon_button_paper",
124        FnWidget::pointer(component::interactive::icon_button_paper::icon_button_paper),
125    );
126    app.register_component(
127        "slider_paper",
128        FnWidget::pointer(component::interactive::slider_paper::slider_paper),
129    );
130    app.register_component(
131        "numeric_slider_paper",
132        FnWidget::pointer(component::interactive::slider_paper::numeric_slider_paper),
133    );
134    app.register_component(
135        "switch_button_paper",
136        FnWidget::pointer(component::interactive::switch_button_paper::switch_button_paper),
137    );
138    app.register_component(
139        "text_button_paper",
140        FnWidget::pointer(component::interactive::text_button_paper::text_button_paper),
141    );
142    app.register_component(
143        "text_field_paper",
144        FnWidget::pointer(component::interactive::text_field_paper::text_field_paper),
145    );
146    app.register_component(
147        "switch_paper",
148        FnWidget::pointer(component::switch_paper::switch_paper),
149    );
150    app.register_component(
151        "text_paper",
152        FnWidget::pointer(component::text_paper::text_paper),
153    );
154}