TreeLinePlan class

The geometry of the connector/indent lines for a single flattened row.

This is the pure, testable core of tree-line rendering: it decides where lines go (in absolute x-centres) from a FlatNode's position flags. It carries no colour/width/style — those are applied by TreeLinesPainter at paint time.

Annotations

Constructors

TreeLinePlan({required List<double> continuationXs, required double? connectorX, required bool connectorIsLast, required double connectorEndX})
const
TreeLinePlan.forRow({required FlatNode row, required double lineWidth})
Derives the line plan for row. Each column is lineWidth wide and lines are centred within their column.
factory

Properties

connectorEndX double
Absolute x where the connector's horizontal stub ends (the right edge of the connector column). Only meaningful when connectorX is non-null.
final
connectorIsLast bool
Whether this row is its parent's last child — the connector's vertical then stops at mid-row instead of running the full row height.
final
connectorX double?
Absolute x-centre of this row's own connector, or null for a root row (a root has no parent to connect to).
final
continuationXs List<double>
Absolute x-centres of full-height vertical guides — one for each ancestor that still has siblings below it, so the guide "continues" past this row.
final
hashCode int
The hash code for this object.
no setteroverride
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

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