Class EdgeProcessor
- Namespace
- FlowGraph.Avalonia.Input.Processors
- Assembly
- FlowGraph.Avalonia.dll
Processes input for edges (selection, reconnection, waypoint manipulation).
public class EdgeProcessor : InputProcessorBase, IInputProcessor
- Inheritance
-
EdgeProcessor
- Implements
- Inherited Members
Remarks
Edges require special handling because:
- They're hit-tested with tolerance (not rectangular)
- Endpoints can be dragged to reconnect to different ports
- Waypoints can be dragged to reshape the edge
- Edge labels can be clicked for editing
Interactions:
- Single click: select edge
- Click near endpoint: start reconnection (ReconnectingState)
- Double click: add waypoint or edit label
- Ctrl+click: toggle selection (multi-select)
Properties
HandledTypes
The hit target types this processor handles (bitmask).
Use bitwise OR to handle multiple types: HitTargetType.Node | HitTargetType.Group
public override HitTargetType HandledTypes { get; }
Property Value
Name
Display name for debugging.
public override string Name { get; }
Property Value
Priority
Priority for checking this processor. Higher = checked first.
public override int Priority { get; }
Property Value
Methods
HandlePointerPressed(InputStateContext, GraphHitTestResult, PointerPressedEventArgs)
Handles pointer pressed on an element this processor is responsible for.
public override InputProcessorResult HandlePointerPressed(InputStateContext context, GraphHitTestResult hit, PointerPressedEventArgs e)
Parameters
contextInputStateContextThe input state context.
hitGraphHitTestResultThe hit test result (guaranteed to be a type from HandledTypes).
ePointerPressedEventArgsThe Avalonia pointer event.
Returns
- InputProcessorResult
Result indicating whether handled and any state transition.