Table of Contents

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

HitTargetType

Name

Display name for debugging.

public override string Name { get; }

Property Value

string

Priority

Priority for checking this processor. Higher = checked first.

public override int Priority { get; }

Property Value

int

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

context InputStateContext

The input state context.

hit GraphHitTestResult

The hit test result (guaranteed to be a type from HandledTypes).

e PointerPressedEventArgs

The Avalonia pointer event.

Returns

InputProcessorResult

Result indicating whether handled and any state transition.