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

open EnterTransition

A convenient function to get the given PaneMotion's EnterTransition under the context of the current PaneScaffoldMotionScope.

Cmn
open ExitTransition

A convenient function to get the given PaneMotion's EnterTransition under the context of the current PaneScaffoldMotionScope.

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

open val PaneMotion.enterTransitionEnterTransition

A convenient function to get the given PaneMotion's EnterTransition under the context of the current PaneScaffoldMotionScope.

See also
enterTransition
open val PaneMotion.exitTransitionExitTransition

A convenient function to get the given PaneMotion's EnterTransition under the context of the current PaneScaffoldMotionScope.

See also
exitTransition

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.