diff options
author | nea <nea@nea.moe> | 2023-09-06 03:10:44 +0200 |
---|---|---|
committer | nea <nea@nea.moe> | 2023-09-06 03:11:59 +0200 |
commit | 0f9ec29648e1b9840813b24587b8a660f6ab4531 (patch) | |
tree | 3edd1ff739d9a8268680a94709a264bff0ddb09b /src/main/kotlin/moe/nea/firmament/gui | |
parent | 12292270511d5d37e9c21307fb1e09d400ae1ff4 (diff) | |
download | Firmament-0f9ec29648e1b9840813b24587b8a660f6ab4531.tar.gz Firmament-0f9ec29648e1b9840813b24587b8a660f6ab4531.tar.bz2 Firmament-0f9ec29648e1b9840813b24587b8a660f6ab4531.zip |
Add command for toggling config options
Diffstat (limited to 'src/main/kotlin/moe/nea/firmament/gui')
-rw-r--r-- | src/main/kotlin/moe/nea/firmament/gui/config/AllConfigsGui.kt | 21 | ||||
-rw-r--r-- | src/main/kotlin/moe/nea/firmament/gui/config/ManagedConfig.kt | 4 |
2 files changed, 12 insertions, 13 deletions
diff --git a/src/main/kotlin/moe/nea/firmament/gui/config/AllConfigsGui.kt b/src/main/kotlin/moe/nea/firmament/gui/config/AllConfigsGui.kt index b926946..75554c0 100644 --- a/src/main/kotlin/moe/nea/firmament/gui/config/AllConfigsGui.kt +++ b/src/main/kotlin/moe/nea/firmament/gui/config/AllConfigsGui.kt @@ -11,34 +11,31 @@ import io.github.cottonmc.cotton.gui.client.CottonClientScreen import io.github.cottonmc.cotton.gui.client.LightweightGuiDescription import io.github.cottonmc.cotton.gui.widget.WBox import io.github.cottonmc.cotton.gui.widget.WButton -import io.github.cottonmc.cotton.gui.widget.WClippedPanel -import io.github.cottonmc.cotton.gui.widget.WGridPanel import io.github.cottonmc.cotton.gui.widget.WLabel -import io.github.cottonmc.cotton.gui.widget.WPanel -import io.github.cottonmc.cotton.gui.widget.WPanelWithInsets import io.github.cottonmc.cotton.gui.widget.WScrollPanel import io.github.cottonmc.cotton.gui.widget.data.Axis import io.github.cottonmc.cotton.gui.widget.data.Insets -import io.ktor.http.* -import kotlin.streams.asSequence -import net.minecraft.client.gui.screen.Screen -import net.minecraft.text.Text import moe.nea.firmament.features.FeatureManager import moe.nea.firmament.gui.WFixedPanel import moe.nea.firmament.gui.WSplitPanel -import moe.nea.firmament.gui.WTightScrollPanel import moe.nea.firmament.repo.RepoManager import moe.nea.firmament.util.MC import moe.nea.firmament.util.ScreenUtil.setScreenLater +import net.minecraft.client.gui.screen.Screen +import net.minecraft.text.Text +import kotlin.streams.asSequence object AllConfigsGui { + val allConfigs + get() = listOf( + RepoManager.Config + ) + FeatureManager.allFeatures.mapNotNull { it.config } + fun makeScreen(parent: Screen? = null): CottonClientScreen { val lwgd = LightweightGuiDescription() var screen: CottonClientScreen? = null - val configs = listOf( - RepoManager.Config - ) + FeatureManager.allFeatures.mapNotNull { it.config } + val configs = allConfigs val box = WBox(Axis.VERTICAL) configs.forEach { config -> val panel = WSplitPanel( diff --git a/src/main/kotlin/moe/nea/firmament/gui/config/ManagedConfig.kt b/src/main/kotlin/moe/nea/firmament/gui/config/ManagedConfig.kt index d2c4d69..8109aed 100644 --- a/src/main/kotlin/moe/nea/firmament/gui/config/ManagedConfig.kt +++ b/src/main/kotlin/moe/nea/firmament/gui/config/ManagedConfig.kt @@ -148,6 +148,8 @@ abstract class ManagedConfig(override val name: String) : ManagedConfigElement() latestGuiAppender?.reloadables?.forEach { it() } } + val labelText = Text.translatable("firmament.config.${name}") + fun getConfigEditor(parent: Screen? = null): CottonClientScreen { val lwgd = LightweightGuiDescription() var screen: Screen? = null @@ -165,7 +167,7 @@ abstract class ManagedConfig(override val name: String) : ManagedConfigElement() } } }) - it.add(WLabel(Text.translatable("firmament.config.${name}")).also { + it.add(WLabel(labelText).also { it.verticalAlignment = VerticalAlignment.CENTER }) }) |