DialogStateWithData

a dialog state holding the current state and the some additional state DialogInteractionSource of the dialog

Parameters

visible

the visibility state of the dialog - must be derived from the state!

state

the state of the dialog - if not null, the dialog is visible, otherwise not

interactionSource

the DialogInteractionSource holding other states for this dialog

Constructors

Link copied to clipboard
constructor(visible: State<Boolean>, state: MutableState<T?>, interactionSource: MutableState<DialogInteractionSource>)

Properties

Link copied to clipboard
val data: T?

this will return the currently holded data

Link copied to clipboard

the DialogInteractionSource holding other states for this dialog

Link copied to clipboard
open override val visible: Boolean

the showing state of the dialog

Functions

Link copied to clipboard

this will dismiss this dialog (if the interactionSource (DialogInteractionSource.dismissAllowed) does allow this)

Link copied to clipboard
fun dismissable(enabled: Boolean)

this will make the dialog dismissable or not

Link copied to clipboard
fun enableButton(button: DialogButtonType, enabled: Boolean)

this will enable or disable a button

Link copied to clipboard

this will determine if a button currently can be pressed (depends on the interactionSource (DialogInteractionSource.buttonPositiveEnabled or DialogInteractionSource.buttonNegativeEnabled))

Link copied to clipboard
open override fun onDismiss()
Link copied to clipboard
fun requireData(): T & Any

this will return the currently holded data

Link copied to clipboard
fun show(data: T)

this will show this dialog