Known direct subclasses
ExtendedPaneScaffoldScope

Extended scope for pane scaffolds.

Known indirect subclasses
ExtendedPaneScaffoldPaneScope

Extended scope for the panes of pane scaffolds.

ThreePaneScaffoldPaneScope

Scope for the panes of ThreePaneScaffold.

ThreePaneScaffoldScope

Scope for the panes of ThreePaneScaffold.


Scope for performing pane motions within a pane scaffold. It provides the spec and necessary info to decide a pane's EnterTransition and ExitTransition, as well as how bounds morphing will be performed.

Summary

Public properties

PaneAnimationSpecs

The animation specs of the associated pane to the scope.

Cmn
PaneAnimationSpecs

The delayed animation specs of the associated pane to the scope.

Cmn
List<PaneMotionData>

PaneMotionData of all panes in the scaffold corresponding to the scaffold's current state transition and motion settings, listed in panes' horizontal order.

Cmn
IntSize

The scaffold's current size.

Cmn

Public properties

animationSpecs

val animationSpecsPaneAnimationSpecs

The animation specs of the associated pane to the scope. AnimatedPane will use this value to perform pane animations during scaffold state changes.

delayedAnimationSpecs

val delayedAnimationSpecsPaneAnimationSpecs

The delayed animation specs of the associated pane to the scope. AnimatedPane will use this value to perform pane animations during scaffold state changes when an animation needs to be played with a delay.

paneMotionDataList

val paneMotionDataListList<PaneMotionData>

PaneMotionData of all panes in the scaffold corresponding to the scaffold's current state transition and motion settings, listed in panes' horizontal order.

The size of position values of PaneMotionData in the list will only be update during measurement of the scaffold and before the first measurement their values will be IntSize.Zero or IntOffset.Zero.

Note that the aforementioned fields are not backed by snapshot states so they are supposed to be only read proactively by the motion logic "on-the-fly" when the scaffold motion is happening.

scaffoldSize

val scaffoldSizeIntSize

The scaffold's current size. Note that the value of the field will only be updated during measurement of the scaffold and before the first measurement the value will be IntSize.Zero.

Note that this field is not backed by snapshot states so it's supposed to be only read proactively by the motion logic "on-the-fly" when the scaffold motion is happening.