egui_graph_edit/
lib.rs

1#![forbid(unsafe_code)]
2
3use slotmap::{SecondaryMap, SlotMap};
4
5pub type SVec<T> = smallvec::SmallVec<[T; 4]>;
6
7/// Contains the main definitions for the node graph model.
8pub mod graph;
9pub use graph::*;
10
11/// Type declarations for the different id types (node, input, output)
12pub mod id_type;
13pub use id_type::*;
14
15/// Implements the index trait for the Graph type, allowing indexing by all
16/// three id types
17pub mod index_impls;
18
19/// Implementing the main methods for the `Graph`
20pub mod graph_impls;
21
22/// Custom error types, crate-wide
23pub mod error;
24pub use error::*;
25
26/// The main struct in the library, contains all the necessary state to draw the
27/// UI graph
28pub mod ui_state;
29pub use ui_state::*;
30
31/// The node finder is a tiny widget allowing to create new node types
32pub mod node_finder;
33pub use node_finder::*;
34
35/// The inner details of the egui implementation. Most egui code lives here.
36pub mod editor_ui;
37pub use editor_ui::*;
38
39/// Several traits that must be implemented by the user to customize the
40/// behavior of this library.
41pub mod traits;
42pub use traits::*;
43
44mod utils;
45
46mod color_hex_utils;
47mod scale;