InteractiveSankeyPainter class

A SankeyPainter subclass that adds interactivity:

  • Supports custom node colors per label
  • Highlights connected links when a node is selected
  • Applies hover/focus feedback with opacity and borders
Inheritance

Constructors

InteractiveSankeyPainter.new({required List<SankeyNode> nodes, required List<SankeyLink> links, required Map<String, Color> nodeColors, int? selectedNodeId, bool showLabels = true, Color linkColor = Colors.grey})

Properties

hashCode int
The hash code for this object.
no setterinherited
linkColor Color
Default color to use for all links
finalinherited
List of Sankey links that define flow between nodes
finalinherited
nodeColor Color
Default color to use for all nodes
finalinherited
nodeColors Map<String, Color>
Map of node labels to specific colors
final
nodes List<SankeyNode>
List of Sankey nodes with layout geometry
finalinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
selectedNodeId int?
ID of the currently selected node, if any
final
semanticsBuilder SemanticsBuilderCallback?
Returns a function that builds semantic information for the picture drawn by this painter.
no setterinherited
showLabels bool
Whether to display node labels beside the nodes
finalinherited

Methods

addListener(VoidCallback listener) → void
Register a closure to be notified when it is time to repaint.
inherited
blendColors(Color a, Color b) Color
Blends two colors for transition effects (used in link paths)
hitTest(Offset position) bool?
Called whenever a hit test is being performed on an object that is using this custom paint delegate.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
paint(Canvas canvas, Size size) → void
Called whenever the object needs to paint. The given Canvas has its coordinate space configured such that the origin is at the top left of the box. The area of the box is the size of the size argument.
override
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that the object notifies when it is time to repaint.
inherited
shouldRebuildSemantics(covariant CustomPainter oldDelegate) bool
Called whenever a new instance of the custom painter delegate class is provided to the RenderCustomPaint object, or any time that a new CustomPaint object is created with a new instance of the custom painter delegate class (which amounts to the same thing, because the latter is implemented in terms of the former).
inherited
shouldRepaint(covariant SankeyPainter oldDelegate) bool
Called whenever a new instance of the custom painter delegate class is provided to the RenderCustomPaint object, or any time that a new CustomPaint object is created with a new instance of the custom painter delegate class (which amounts to the same thing, because the latter is implemented in terms of the former).
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited