Skip to main content

Crate gantz_egui

Crate gantz_egui 

Source
Expand description

A suite of widgets, nodes and implementations for creating a GUI around gantz using egui.

Re-exports§

pub use keybind::Action;
pub use keybind::Keymap;
pub use node::FnNodeNames;
pub use node::NameRegistry;
pub use node::builtins;
pub use reg::RegistryRef;
pub use response::ContextMenuResponse;
pub use response::DynResponse;
pub use response::InspectorRowsResponse;
pub use response::InspectorUiResponse;
pub use response::NodeUiResponse;
pub use response::NodeViewResponse;
pub use response::ResponseData;
pub use response::Responses;
pub use sugar::EguiSugar;
pub use view::Camera;
pub use view::SceneView;
pub use widget::gantz::NodeTypeRegistry;
pub use widget::graph_select::GraphRegistry;

Modules§

cycle
Detecting reference cycles among named graphs.
export
Export/import representation for sharing node sets between gantz instances.
format
The Export-level .gantz format.
keybind
The keymap: a single source of truth for the editor’s command keyboard shortcuts.
merge
Merge-candidate detection and dry-run previews for the graph config pane.
node
Provides custom nodes that are commonly useful to egui applications of gantz.
ops
Shared operations behind the GUI’s graph-mutating response payloads.
reg
Registry reference for node lookup and trait implementations.
response
Dynamic, typed response data emitted from within the widget tree.
sugar
.gantz keyword sugar for this crate’s GUI node set.
sync
Keeping NamedRef references current across the registry.
view
Viewport-independent camera + layout state for a graph scene.
widget
A collection of useful widgets for gantz.

Structs§

BranchNode
Branch a named node: create a new name with its own commit for the given content address, and replace the node with a reference to it.
CommandInfo
Display-ready documentation for a creatable node type.
CopyNodes
Copy the given nodes to the clipboard.
CreateNestedGraph
Create a new nested graph in the emitting head’s graph.
CreateNode
Create a new node of the given type in the emitting head’s graph.
CutNodes
Copy the given nodes to the clipboard, then remove them from the graph.
DuplicateNodes
Duplicate the given nodes in place (copy, then paste at a small offset).
EvalEntry
Evaluate an entrypoint (push or pull).
ExportAllNamed
Export all named graphs (with transitive deps + views) to a single .gantz file. Emitted without an associated head.
ExportHead
Export the emitting head (graph + transitive deps + views) to a .gantz file.
HeadDataMut
Mutable access to a head’s data, provided via HeadAccess::with_head_mut.
InspectEdge
Insert an inspect node on the given edge at the given position.
MergeHead
Merge the named source branch into the emitting head (see ops::merge_head).
NodeCtx
A wrapper around a node’s path and the VM providing easy access to the node’s state.
OpenHead
Open a head (named or commit) as a new tab.
OpenLogs
Open (show) the logs pane.
OpenNodePalette
Open the node palette for node creation.
OpenNodeView
Open the given node’s view (NodeUi::view_ui) as its own top-level tile (a Pane::NodeView), for monitoring it in a fixed location. The node is identified by its path within the emitting head’s graph (the head is taken from the payload’s head tag).
Paste
Paste clipboard contents at the given position.
Redo
Redo a previously undone edit (move head forward).
ReplaceHead
Navigate the focused tab to a head in place (replacing it), rather than opening a new tab. Used for entering a nested graph and for breadcrumb navigation between parent:child levels.
ResetTilesLayout
Reset the top-level tile layout to its default arrangement.
SocketDoc
On-hover documentation for a single node inlet or outlet.
Undo
Undo the last graph edit (move head to parent commit).

Enums§

PastePos
How to position pasted nodes.
SocketKind
Describes either an input or output.

Traits§

HeadAccess
Provides access to open head data for the Gantz widget.
NodeUi
A trait providing an egui Ui implementation for gantz nodes.
Registry
Combined registry trait for UI operations.

Functions§

head_is_focused
Check if the given head is the currently focused head.
node_info_ui
Render a CommandInfo as a name heading, description, and labelled input/output lists.
resolve_paste_offset
Resolve a PastePos to a concrete offset vector for use with export::paste.