Package-level declarations

Types

Link copied to clipboard
sealed interface DesktopPaneScope

The receiver of a DesktopPane's content, through which a frame floating on that desktop is declared. Each InternalFrame call declares one frame, in call order, and a frame is the only child a desktop takes: anything else composed in the content names no place on the desktop and is refused.

Link copied to clipboard
class InternalFrameControls(val closable: Boolean = false, val resizable: Boolean = false, val maximizable: Boolean = false, val iconifiable: Boolean = false)

Which window controls an internal frame shows. Every control defaults to off, matching a freshly constructed JInternalFrame.

Link copied to clipboard
@Stable
class InternalFrameState @RememberInComposition constructor(bounds: Rectangle, iconified: Boolean = false, maximized: Boolean = false)

A state object that can be hoisted to control and observe where one internal frame of a DesktopPane sits, how large it is, and whether it stands on the desktop as its icon or fills the desktop.

Link copied to clipboard
sealed interface LayeredPaneScope

The receiver of a LayeredPane's content, through which a child declares the depth layer it sits on.

Functions

Link copied to clipboard
@Composable
fun DesktopPane(modifier: SwingModifier = SwingModifier, content: @Composable DesktopPaneScope.() -> Unit)

The desktop of a multi-document application, realized as a JDesktopPane: the surface the internal frames content declares float on.

Link copied to clipboard
@Composable
fun LayeredPane(modifier: SwingModifier = SwingModifier, content: @Composable LayeredPaneScope.() -> Unit)

A container that stacks its content on integer depth layers rather than laying it out, realized as a JLayeredPane.

Link copied to clipboard
@Composable
fun rememberInternalFrameState(bounds: Rectangle, iconified: Boolean = false, maximized: Boolean = false): InternalFrameState

Creates an InternalFrameState that is remembered across compositions.