Table of Contents

Namespace FlowGraph.Core.Commands

Classes

AddEdgeCommand

Command to add an edge to the graph.

AddNodeCommand

Command to add a node to the graph.

AddNodesToGroupCommand

Command to add nodes to an existing group.

AlreadyExecutedCommand

Wraps a command that has already been executed, skipping the initial Execute call. Used when an action was performed through UI and we just need to track it for undo/redo.

CommandHistory

Manages command history for undo/redo functionality. Uses a bounded deque structure for O(1) trimming operations.

CompositeCommand

Command that groups multiple commands into a single undoable operation.

DuplicateCommand

Command to duplicate nodes and edges.

GroupNodesCommand

Command to group selected nodes into a new group.

MoveElementsCommand

Command to move one or more elements (nodes, shapes) to new positions. Works with any ICanvasElement that has a settable Position property.

MoveNodesCommand

Command to move one or more nodes to new positions.

PasteCommand

Command to paste nodes and edges from clipboard.

RemoveEdgeCommand

Command to remove an edge from the graph.

RemoveEdgesCommand

Command to remove multiple edges from the graph.

RemoveElementsCommand

Command to remove one or more elements from the graph. Supports nodes, edges, and shapes. For nodes, automatically removes connected edges.

RemoveNodeCommand

Command to remove a node and its connected edges from the graph.

RemoveNodesCommand

Command to remove multiple nodes and their connected edges.

RemoveNodesFromGroupCommand

Command to remove nodes from their parent group.

ResizeElementsCommand

Command to resize one or more elements (nodes, shapes). Works with any ICanvasElement that has settable Width/Height properties.

ResizeElementsCommand.SizeSnapshot

Snapshot of an element's size and position for resize operations.

ResizeNodeCommand

Command to resize a node.

ToggleGroupCollapseCommand

Command to toggle a group's collapsed state.

UngroupNodesCommand

Command to ungroup nodes from a group.

Interfaces

IGraphCommand

Interface for reversible commands that support undo/redo.