brisk_egui_components/
lib.rs1#![doc = include_str!("../README.MD")]
2#![warn(missing_docs)]
3
4extern crate proc_macro;
5
6use lazy_static::lazy_static;
7
8mod common;
9mod component;
10mod containers;
11mod eval;
12mod frame;
13mod image;
14mod input;
15mod layout;
16mod menu;
17mod misc;
18mod painter;
19mod panels;
20mod popup;
21mod properties;
22mod scope;
23mod text;
24mod ui_builder;
25mod utils;
26mod viewport;
27mod widgets;
28mod window;
29
30#[cfg(feature = "cartography")]
31mod cartography;
32
33#[cfg(feature = "node-graph-editor")]
34mod node_graph_editor;
35
36#[cfg(feature = "plot")]
37mod plot;
38
39#[cfg(feature = "table")]
40mod table;
41
42lazy_static! {
43 pub static ref MANAGER: brisk_it::generator::Manager = {
45 let manager = brisk_it::generator::ManagerBuilder::new()
46 .insert(&brisk_common_components::MANAGER)
47 .add(
48 "Component",
49 component::Component {
50 component_type: component::Type::Widget,
51 },
52 )
53 .add(
54 "PanelComponent",
55 component::Component {
56 component_type: component::Type::Panel,
57 },
58 )
59 .create::<containers::ComboBox>("ComboBox")
60 .create::<containers::ScrollArea>("ScrollArea")
61 .create::<eval::Eval>("Eval")
62 .create::<frame::Frame>("Frame")
63 .create::<image::Image>("Image")
64 .create::<input::Button>("Button")
65 .create::<input::CheckBox>("CheckBox")
66 .create::<input::DragValue>("DragValue")
67 .create::<input::Interact>("Interact")
68 .create::<input::Slider>("Slider")
69 .create::<input::RadioButton>("RadioButton")
70 .add("MultiLineTextEdit", input::TextEdit
71 {
72 text_edit_type: input::TextEditType::MultiLine
73 })
74 .add("TextEdit", input::TextEdit
75 {
76 text_edit_type: input::TextEditType::SingleLine
77 })
78 .create::<layout::Grid>("Grid")
79 .create::<layout::GridRow>("GridRow")
80 .create::<layout::Horizontal>("Horizontal")
81 .create::<menu::MenuBar>("MenuBar")
82 .create::<menu::MenuButton>("MenuButton")
83 .create::<misc::Separator>("Separator")
84 .create::<painter::Painter>("Painter")
85 .create::<panels::CentralPanel>("CentralPanel")
86 .create::<panels::SidePanel>("SidePanel")
87 .create::<panels::TopBottomPanel>("TopBottomPanel")
88 .create::<popup::PopupMenu>("PopupMenu")
89 .create::<properties::Properties>("Properties")
90 .create::<scope::Scope>("Scope")
91 .create::<text::Heading>("Heading")
92 .create::<text::Hyperlink>("Hyperlink")
93 .create::<text::Label>("Label")
94 .create::<ui_builder::UiBuilder>("UiBuilder")
95 .create::<viewport::Viewport>("Viewport")
96 .create::<widgets::GlobalThemePreferenceSwitch>("GlobalThemePreferenceSwitch")
97 .create::<widgets::SelectableValue>("SelectableValue")
98 .create::<window::Window>("Window");
99
100 #[cfg(feature = "cartography")]
101 let manager = manager.create::<cartography::MapViewer>("MapViewer");
102
103 #[cfg(feature = "node-graph-editor")]
104 let manager = manager.create::<node_graph_editor::GraphEditor>("GraphEditor");
105
106 #[cfg(feature = "plot")]
107 let manager = manager.create::<plot::Plot>("Plot")
108 .create::<plot::Line>("Line");
109
110 #[cfg(feature = "table")]
111 let manager = manager.create::<table::Table>("Table")
112 .create::<table::HeaderRow>("HeaderRow");
113
114 #[cfg(feature = "rfd")]
115 let manager = manager.insert(&brisk_rfd_components::MANAGER);
116
117 manager.into()
118 };
119}