WallBuilder class abstract

Defines how the wall will be built If you want to define your own algorithm, you will have to inherit from this abstract class, and implements the method WallBuilder.computeStonePositions.


Default constructor.
Default WallBuilder implementation


direction Axis
Define wall build direction, like ListView.direction input parameter.
no setter
hashCode int
The hash code for this object.
no setterinherited
mainAxisSeparations int
Define how many layers of the main axis the wall possess.
no setter
reverse bool
Define whether the wall must be displayed in reverse, like ListView.reverse input parameter.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited


assertNoDrawOutside(Map<Stone, StoneStartPosition> stonesPositions) → void
assertNoOverlap(Map<Stone, StoneStartPosition> stonesPositions) → void
build({required int mainAxisSeparations, required bool reverse, required Axis direction, required List<Stone> stones}) WallBlueprint
Build the wall with scrollview parameters
computeSize(Map<Stone, StoneStartPosition> stonesPositions) WallSize
Compute the wall size from the stones positions.
computeStonePositions(List<Stone> stones) Map<Stone, StoneStartPosition>
Let you compute stone position for each stone. StonePositions must not overlap (stack not allowed), and not been drawn outside the wall (depending on WallBuilder.mainAxisSeparations).
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
toString() String
A string representation of this object.


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