Skip to main content

Crate ferrum_flow

Crate ferrum_flow 

Source

Structs§

AlignPlugin
Align selected nodes to their shared bounding box (⌘⇧L/R/T/B/H/V or Ctrl⇧…).
AlignmentGuides
World-space alignment guides while dragging nodes (vertical x, horizontal y).
BackgroundPlugin
ClipboardPlugin
Copy / paste selected nodes, their ports, and edges between those ports (one undo on paste).
CommandContext
CompositeCommand
ContextMenuCanvasExtra
One extra row on the canvas background context menu (after built-in items).
ContextMenuCustomAction
Callback invoked when the user picks a custom canvas menu row (e.g. open an input dialog in the app).
ContextMenuPlugin
Right-click menu on the canvas (empty area) or on a node. Optional ContextMenuCanvasExtra rows are appended after built-in canvas actions.
CreateEdge
CreateNode
CreatePort
DeletePlugin
Edge
EdgeBuilder
EdgeId
EdgePlugin
FitAllGraphPlugin
Zoom and pan so all nodes fit in the window (⌘0 / Ctrl+0). Undo restores the previous view.
FlowCanvas
FlowTheme
Default canvas chrome: node cards, grid, edges, selection marquee.
FocusSelectionPlugin
Pan + zoom the viewport so selected nodes fit the window (⌘⇧F / Ctrl⇧F). Undo restores prior view.
Graph
GraphChange
HistoryPlugin
InitPluginContext
InteractionState
LocalHistory
MinimapPlugin
Renders a bottom-right overview map and pans the viewport when the user clicks it.
Node
NodeBuilder
NodeId
NodeInteractionPlugin
NodePlugin
PluginContext
Port
PortId
PortInteractionPlugin
RenderContext
RendererRegistry
SelectAllViewportPlugin
Select every node and edge that intersects the current window viewport (⌘A / Ctrl+A).
SelectionPlugin
SnapGuidesPlugin
While dragging nodes, draws magenta alignment lines when selection bbox matches other nodes.
Viewport
ViewportPlugin
ZoomControlsPlugin
Bottom-left + / / / (fit all); priority 128 so clicks beat canvas selection.

Enums§

ChangeSource
EventResult
FlowEvent
GraphChangeKind
GraphOp
InputEvent
InteractionResult
NodeCardVariant
Chrome for RenderContext::node_card_shell. NodeCardVariant::Default and NodeCardVariant::UndefinedType read colors from RenderContext::theme; plugins may change them via InitPluginContext::theme / PluginContext::theme.
PortKind
PortPosition
RenderLayer

Constants§

DEFAULT_NODE_HEIGHT
DEFAULT_NODE_WIDTH

Traits§

Command
HistoryProvider
Interaction
NodeRenderer
Plugin
SyncPlugin

Functions§

default_node_caption
Label for [DefaultNodeRenderer]: user-facing title from data, else node_type, else a generic word. UUID stays off-canvas; use debug/inspector/tooltip if operators need the id.
edge_bezier
filled_disc_path
Filled circle in screen space (for dangling-connection endpoint marker).
port_screen_big_bounds
port_screen_bounds
port_screen_position
primary_platform_modifier
Primary shortcut modifier: ⌘ on macOS, Ctrl on other platforms.