AnimationState class
Animation state for a single node (standalone animations only).
Only nodes that are actively animating via individual expand/collapse have an AnimationState. Bulk operations (expandAll/collapseAll) track nodes directly in AnimationGroup sets without creating AnimationState objects. Once animation completes, the state is removed.
Constructors
- AnimationState({required AnimationType type, required double startExtent, required double targetExtent, double progress = 0.0, Object? triggeringAncestorId, double speedMultiplier = 1.0})
Properties
- currentExtent ↔ double
-
The interpolated current extent.
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- isComplete → bool
-
Whether this animation has completed.
no setter
- progress ↔ double
-
Animation progress from 0.0 to 1.0.
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- speedMultiplier → double
-
Speed multiplier for proportional timing on cross-group transitions.
Values > 1.0 make the animation complete proportionally faster.
final
- startExtent ↔ double
-
The extent (height) at animation start. Mutable to allow updates
when the actual size is measured.
getter/setter pair
- targetExtent ↔ double
-
The extent (height) at animation end. Mutable to allow updates
when the actual size is measured.
getter/setter pair
- triggeringAncestorId → Object?
-
If this animation was triggered by an ancestor expanding/collapsing,
this is that ancestor's ID. Used to coordinate grouped animations.
final
- type → AnimationType
-
The type of animation.
final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
override
-
updateExtent(
[Curve curve = Curves.linear]) → void -
Updates currentExtent based on progress and an optional
curve.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited