Table of Contents

Class EdgeState

Namespace
FlowGraph.Core.Models
Assembly
FlowGraph.Core.dll

Default implementation of IEdgeState using ObservableBase. Provides framework-agnostic property change notification with no external dependencies.

public class EdgeState : ObservableBase, IEdgeState, INotifyPropertyChanged
Inheritance
EdgeState
Implements
Inherited Members

Remarks

For Avalonia applications, consider using ObservableEdgeState from FlowGraph.Avalonia which uses source generators for better performance.

Properties

IsSelected

Whether this edge is currently selected.

public bool IsSelected { get; set; }

Property Value

bool

IsVisible

Whether this edge is visible in the canvas. Invisible edges are not rendered but remain in the graph.

public bool IsVisible { get; set; }

Property Value

bool

UserWaypoints

User-defined waypoints for Manual/Guided routing modes. These are constraint points that the user explicitly placed.

public IReadOnlyList<Point>? UserWaypoints { get; set; }

Property Value

IReadOnlyList<Point>

Remarks

In Manual mode, the edge passes directly through these points without auto-routing.

In Guided mode, the router will calculate a path that passes through these points while avoiding obstacles.

In Auto mode, this property is ignored.

Waypoints

Computed waypoints for edge rendering (set by router). When set, the edge will pass through these intermediate points. Does not include the start and end points (port positions).

public IReadOnlyList<Point>? Waypoints { get; set; }

Property Value

IReadOnlyList<Point>

Remarks

This property is typically set by the routing system, not directly by users. For manual waypoint editing, use UserWaypoints instead.

ZIndex

Z-index for rendering order. Higher values render on top. Default is CanvasElement.ZIndexEdges (200).

public int ZIndex { get; set; }

Property Value

int

Methods

ClearUserWaypoints()

Clears user-defined waypoints.

public void ClearUserWaypoints()

ClearWaypoints()

Clears all waypoints (both computed and user-defined).

public void ClearWaypoints()

Clone()

Creates a copy of this state.

public EdgeState Clone()

Returns

EdgeState

CopyFrom(IEdgeState)

Copies values from another state instance.

public void CopyFrom(IEdgeState other)

Parameters

other IEdgeState

SetUserWaypoints(IEnumerable<Point>?)

Sets user waypoints from a list of points.

public void SetUserWaypoints(IEnumerable<Point>? points)

Parameters

points IEnumerable<Point>

SetWaypoints(IEnumerable<Point>?)

Sets waypoints from a list of points.

public void SetWaypoints(IEnumerable<Point>? points)

Parameters

points IEnumerable<Point>