FollowerLayer class

A composited layer that applies a transformation matrix to its children such that they are positioned to match a LeaderLayer.

If any of the ancestors of this layer have a degenerate matrix (e.g. scaling by zero), then the FollowerLayer will not be able to transform its child to the coordinate space of the LeaderLayer.

A linkedOffset property can be provided to further offset the child layer from the leader layer, for example if the child is to follow the linked layer at a distance rather than directly overlapping it.

Inheritance

Constructors

FollowerLayer({@required LayerLink link, bool showWhenUnlinked: true, Offset unlinkedOffset: Offset.zero, Offset linkedOffset: Offset.zero })
Creates a follower layer. [...]

Properties

alwaysNeedsAddToScene bool
This disables retained rendering for Leader/FollowerLayer. [...]
read-only, override
The link to the LeaderLayer. [...]
final
linkedOffset Offset
Offset from the origin of the leader layer to the origin of the child layers, used when the layer is linked to a LeaderLayer. [...]
read / write
showWhenUnlinked bool
Whether to show the layer's contents when the link does not point to a LeaderLayer. [...]
read / write
unlinkedOffset Offset
Offset from parent in the parent's coordinate system, used when the layer is not linked to a LeaderLayer. [...]
read / write
attached bool
Whether this node is in a tree whose root is attached to something. [...]
read-only, inherited
debugCreator ↔ dynamic
The object responsible for creating this layer. [...]
read / write, inherited
debugSubtreeNeedsAddToScene bool
Whether any layer in the subtree needs addToScene. [...]
@visibleForTesting, read-only, inherited
depth int
The depth of this node in the tree. [...]
read-only, inherited
firstChild Layer
The first composited layer in this layer's child list.
read-only, inherited
hashCode int
The hash code for this object. [...]
read-only, inherited
lastChild Layer
The last composited layer in this layer's child list.
read-only, inherited
nextSibling Layer
This layer's next sibling in the parent layer's child list.
read-only, inherited
owner Object
The owner for this node (null if unattached). [...]
read-only, inherited
parent ContainerLayer
This layer's parent in the layer tree. [...]
read-only, inherited
previousSibling Layer
This layer's previous sibling in the parent layer's child list.
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

addToScene(SceneBuilder builder, [ Offset layerOffset = Offset.zero ]) EngineLayer
Override this method to upload this layer to the engine. [...]
override
applyTransform(Layer child, Matrix4 transform) → void
Applies the transform that would be applied when compositing the given child to the given matrix. [...]
override
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node. [...]
override
find<S>(Offset regionOffset) → S
Returns the value of S that corresponds to the point described by regionOffset. [...]
override
getLastTransform() Matrix4
The transform that was used during the last composition phase. [...]
addChildrenToScene(SceneBuilder builder, [ Offset childOffset = Offset.zero ]) → void
Uploads all of this layer's children to the engine. [...]
inherited
adoptChild(covariant AbstractNode child) → void
Mark the given node as being a child of this node. [...]
inherited
append(Layer child) → void
Adds the given layer to the end of this layer's child list.
inherited
attach(covariant Object owner) → void
Mark this node as attached to the given owner. [...]
inherited
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children. [...]
inherited
debugMarkClean() → void
Mark that this layer is in sync with engine. [...]
@visibleForTesting, inherited
detach() → void
Mark this node as detached. [...]
inherited
dropChild(covariant AbstractNode child) → void
Disconnect the given node from this node. [...]
inherited
markNeedsAddToScene() → void
Mark that this layer has changed and addToScene needs to be called.
@protected, inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
redepthChild(AbstractNode child) → void
Adjust the depth of the given child to be greater than this node's own depth. [...]
@protected, inherited
redepthChildren() → void
Adjust the depth of this node's children, if any. [...]
inherited
remove() → void
Removes this layer from its parent layer's child list. [...]
@mustCallSuper, inherited
removeAllChildren() → void
Removes all of this layer's children from its child list.
inherited
replaceWith(Layer newLayer) → void
Replaces this layer with the given layer in the parent layer's child list.
inherited
toDiagnosticsNode({String name, DiagnosticsTreeStyle style }) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by toStringDeep. [...]
inherited
toString({DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a string representation of this object.
inherited
toStringDeep({String prefixLineOne: '', String prefixOtherLines, DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a string representation of this node and its descendants. [...]
inherited
toStringShallow({String joiner: ', ', DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a one-line detailed description of the object. [...]
inherited
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode. [...]
inherited
updateSubtreeNeedsAddToScene() → void
Traverse the layer tree and compute if any subtree needs addToScene. [...]
inherited

Operators

operator ==(dynamic other) bool
The equality operator. [...]
inherited