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 islineWidthwide 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