DEADSOFTWARE

Update version script
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / menu / objects / BooleanOptionButton.kt
1 package ru.deadsoftware.cavedroid.menu.objects
3 import ru.deadsoftware.cavedroid.MainConfig
5 class BooleanOptionButton(
6 private val mainConfig: MainConfig,
7 private val optionKey: String,
8 private val defaultValue: Boolean,
9 label: String,
10 x: Int,
11 y: Int,
12 type: Int,
13 ) : Button(
14 label,
15 x,
16 y,
17 type,
18 {
19 val current = (mainConfig.getPreference(optionKey)?.toBooleanStrictOrNull()) ?: defaultValue
20 mainConfig.setPreference(optionKey, (!current).toString())
21 }
22 ) {
24 override fun getLabel(): String {
25 val value = (mainConfig.getPreference(optionKey)?.toBooleanStrictOrNull()) ?: defaultValue
26 return super.getLabel().replace("%%value%%", value.toString())
27 }
29 }