Skip to content

//readium-navigator/org.readium.r2.navigator.preferences/EnumPreference

EnumPreference

[androidJvm]\ interface EnumPreference<T> : Preference<T>

A Preference which accepts a closed set of values.

Functions

Name Summary
set [androidJvm]
abstract fun set(value: T?)
Set the preference to value. A null value means unsetting the preference.

Properties

Name Summary
effectiveValue [androidJvm]
abstract val effectiveValue: T
The value that will be effectively used by the navigator if preferences are submitted as they are.
isEffective [androidJvm]
abstract val isEffective: Boolean
If this preference will be effectively used by the navigator if preferences are submitted as they are.
supportedValues [androidJvm]
abstract val supportedValues: List<T>
List of valid values for this preference.
value [androidJvm]
abstract val value: T?
The current value of the preference.

Inheritors

Name
EnumPreferenceDelegate

Extensions

Name Summary
clear [androidJvm]
fun <T> Preference<T>.clear()
Unset the preference.
flipped [androidJvm]
fun Preference<Boolean>.flipped(): Preference<Boolean>
Returns a new preference with its boolean value flipped.
map [androidJvm]
fun <T, V> EnumPreference<T>.map(from: (T) -> V, to: (V) -> T, supportedValues: (List<T>) -> List<V> = { it.map(from) }): EnumPreference<V>
Creates a new EnumPreference object wrapping the receiver and converting its value and supportedValues, from and to the target type V.
[androidJvm]
fun <T, V> Preference<T>.map(from: (T) -> V, to: (V) -> T): Preference<V>
Creates a new Preference object wrapping the receiver and converting its value from and to the target type V.
mapSupportedValues [androidJvm]
fun <T> EnumPreference<T>.mapSupportedValues(transform: (List<T>) -> List<T>): EnumPreference<T>
Creates a new EnumPreference object wrapping the receiver and transforming its supported values with transform.
toggle [androidJvm]
fun Preference<Boolean>.toggle()
Toggle the preference value. A default value is taken as the initial one if the preference is currently unset.
withSupportedValues [androidJvm]
fun <T> EnumPreference<T>.withSupportedValues(vararg supportedValues: T): EnumPreference<T>
fun <T> EnumPreference<T>.withSupportedValues(supportedValues: List<T>): EnumPreference<T>
fun <T> Preference<T>.withSupportedValues(vararg supportedValues: T): EnumPreference<T>
fun <T> Preference<T>.withSupportedValues(supportedValues: List<T>): EnumPreference<T>
Creates a new EnumPreference object wrapping the receiver with the provided supportedValues.