Selector

interface Selector<T>

Unified interface which can be used in any system which require some selection functionality

Functions

Link copied to clipboard
abstract suspend fun clearSelection()
Link copied to clipboard
abstract suspend fun forceDeselect(element: T)
Link copied to clipboard
abstract suspend fun forceSelect(element: T)
Link copied to clipboard
abstract suspend fun toggleSelection(element: T)

Properties

Link copied to clipboard
abstract val itemSelected: SharedFlow<T>
Link copied to clipboard
abstract val itemUnselected: SharedFlow<T>
Link copied to clipboard
abstract val selectedItems: List<T>

Inheritors

Link copied to clipboard
Link copied to clipboard

Extensions

Link copied to clipboard
inline operator fun <T> Selector<T>.contains(element: T): Boolean
Link copied to clipboard
inline suspend fun <T> Selector<T>.forceDeselect(elements: List<T>)
inline suspend fun <T> Selector<T>.forceDeselect(firstElement: T, vararg elements: T)
Link copied to clipboard
inline suspend fun <T> Selector<T>.forceSelect(elements: List<T>)
inline suspend fun <T> Selector<T>.forceSelect(firstElement: T, vararg elements: T)
Link copied to clipboard
fun <T> Selector<T>.itemSelectionFlow(element: T, scope: CoroutineScope): SharedFlow<Boolean>
Link copied to clipboard
Link copied to clipboard
inline suspend fun <T> Selector<T>.toggleSelection(elements: List<T>)
inline suspend fun <T> Selector<T>.toggleSelection(firstElement: T, vararg elements: T)