Beep.Skia reports activity through plain .NET events. The manager raises diagram-level events (ComponentDropped, DrawSurface, SelectionChanged and theme changes), while the interaction helper raises pointer and hover events. The event argument types below carry the payloads.

Pointer Events

Click and hover payloads.

ComponentClickEventArgs

Event args for component (node) click events.

MemberKindDescription
IDrawableComponent ComponentPropertyGets or sets the component.
SKPoint ClickPositionPropertyGets or sets the click position.
MouseButton ButtonPropertyGets or sets the button.
bool IsDoubleClickPropertyGets or sets the is double click.

DiagramClickEventArgs

Event args for diagram canvas click events (clicking empty space).

MemberKindDescription
SKPoint ClickPositionPropertyGets or sets the click position.
MouseButton ButtonPropertyGets or sets the button.

LineClickEventArgs

Event args for connection line click events.

MemberKindDescription
IConnectionLine LinePropertyGets or sets the line.
SKPoint ClickPositionPropertyGets or sets the click position.
MouseButton ButtonPropertyGets or sets the button.
bool IsDoubleClickPropertyGets or sets the is double click.

HoverChangedEventArgs

Event args for hover state changes.

MemberKindDescription
IDrawableComponent ComponentPropertyGets or sets the component.
IConnectionLine LinePropertyGets or sets the line.
bool IsHoveredPropertyGets or sets the is hovered.
SKPoint PositionPropertyGets or sets the position.

Drag and Drop Events

Payload raised when a component drag ends.

ComponentDropEventArgs

Event args for when a component is dropped after a drag operation. Provides final positions in canvas and screen space along with final bounds.

MemberKindDescription
SkiaComponent ComponentPropertyGets or sets the component.
SKPoint CanvasPositionPropertyGets or sets the canvas position.
SKPoint ScreenPositionPropertyGets or sets the screen position.
SKRect BoundsPropertyGets or sets the bounds.
SKPoint LocationPropertyGets or sets the location.