Top-level directives about how a pane scaffold should be arranged and spaced, like how many partitions the layout can be split into and what should be the gutter size.

Summary

Public companion properties

PaneScaffoldDirective

A default instance of PaneScaffoldDirective that suggests a single-pane layout that occupies the full window.

Cmn

Public constructors

PaneScaffoldDirective(
    maxHorizontalPartitions: Int,
    horizontalPartitionSpacerSize: Dp,
    maxVerticalPartitions: Int,
    verticalPartitionSpacerSize: Dp,
    defaultPanePreferredWidth: Dp,
    excludedBounds: List<Rect>
)
Cmn

Public functions

PaneScaffoldDirective
copy(
    maxHorizontalPartitions: Int,
    horizontalPartitionSpacerSize: Dp,
    maxVerticalPartitions: Int,
    verticalPartitionSpacerSize: Dp,
    defaultPanePreferredWidth: Dp,
    excludedBounds: List<Rect>
)

Returns a new copy of PaneScaffoldDirective with specified fields overwritten.

Cmn
open operator Boolean
equals(other: Any?)
Cmn
open Int
Cmn
open String
Cmn

Public properties

Dp

Default preferred width of panes that will be used by the scaffold if there's no Modifier.preferredWidth provided with a pane.

Cmn
List<Rect>

the bounds of all areas in the window that the layout needs to avoid displaying anything upon it.

Cmn
Dp

Size of the spacers between horizontal partitions.

Cmn
Int

the max number of partitions along the horizontal axis the layout can be split into.

Cmn
Int

the max number of partitions along the vertical axis the layout can be split into.

Cmn
Dp

Size of the spacers between vertical partitions.

Cmn

Public companion properties

Default

val DefaultPaneScaffoldDirective

A default instance of PaneScaffoldDirective that suggests a single-pane layout that occupies the full window. To create a customized PaneScaffoldDirective, you can use PaneScaffoldDirective.copy on the default instance to create a copy with custom values.

Public constructors

PaneScaffoldDirective

PaneScaffoldDirective(
    maxHorizontalPartitions: Int,
    horizontalPartitionSpacerSize: Dp,
    maxVerticalPartitions: Int,
    verticalPartitionSpacerSize: Dp,
    defaultPanePreferredWidth: Dp,
    excludedBounds: List<Rect>
)

Public functions

copy

fun copy(
    maxHorizontalPartitions: Int = this.maxHorizontalPartitions,
    horizontalPartitionSpacerSize: Dp = this.horizontalPartitionSpacerSize,
    maxVerticalPartitions: Int = this.maxVerticalPartitions,
    verticalPartitionSpacerSize: Dp = this.verticalPartitionSpacerSize,
    defaultPanePreferredWidth: Dp = this.defaultPanePreferredWidth,
    excludedBounds: List<Rect> = this.excludedBounds.toList()
): PaneScaffoldDirective

Returns a new copy of PaneScaffoldDirective with specified fields overwritten. Use this method to create a custom PaneScaffoldDirective from the default instance or the result of calculatePaneScaffoldDirective.

Parameters
maxHorizontalPartitions: Int = this.maxHorizontalPartitions

the max number of partitions along the horizontal axis the layout can be split into.

horizontalPartitionSpacerSize: Dp = this.horizontalPartitionSpacerSize

Size of the spacers between horizontal partitions. It's equivalent to the left/right margins the horizontal partitions.

maxVerticalPartitions: Int = this.maxVerticalPartitions

the max number of partitions along the vertical axis the layout can be split into.

verticalPartitionSpacerSize: Dp = this.verticalPartitionSpacerSize

Size of the spacers between vertical partitions. It's equivalent to the top/bottom margins of the vertical partitions.

defaultPanePreferredWidth: Dp = this.defaultPanePreferredWidth

Default preferred width of panes that will be used by the scaffold if there's no Modifier.preferredWidth provided with a pane.

excludedBounds: List<Rect> = this.excludedBounds.toList()

the bounds of all areas in the window that the layout needs to avoid displaying anything upon it. Usually these bounds represent where physical hinges are.

equals

open operator fun equals(other: Any?): Boolean

hashCode

open fun hashCode(): Int

toString

open fun toString(): String

Public properties

defaultPanePreferredWidth

val defaultPanePreferredWidthDp

Default preferred width of panes that will be used by the scaffold if there's no Modifier.preferredWidth provided with a pane. See Modifier.preferredWidth for more info about how and when preferred width will be used.

excludedBounds

val excludedBoundsList<Rect>

the bounds of all areas in the window that the layout needs to avoid displaying anything upon it. Usually these bounds represent where physical hinges are.

horizontalPartitionSpacerSize

val horizontalPartitionSpacerSizeDp

Size of the spacers between horizontal partitions. It's equivalent to the left/right margins the horizontal partitions.

maxHorizontalPartitions

val maxHorizontalPartitionsInt

the max number of partitions along the horizontal axis the layout can be split into.

maxVerticalPartitions

val maxVerticalPartitionsInt

the max number of partitions along the vertical axis the layout can be split into.

verticalPartitionSpacerSize

val verticalPartitionSpacerSizeDp

Size of the spacers between vertical partitions. It's equivalent to the top/bottom margins of the vertical partitions.