feat: MoulConfig config gui

This commit is contained in:
Linnea Gräf
2024-11-12 17:02:08 +01:00
parent 9763a4caa4
commit b774daef5b
14 changed files with 691 additions and 22 deletions

View File

@@ -0,0 +1,27 @@
package moe.nea.firmament.compat.moulconfig
import io.github.notenoughupdates.moulconfig.Config
import moe.nea.firmament.gui.config.ManagedOption
abstract class ProcessedEditableOptionFirm<T : Any>(
val managedOption: ManagedOption<T>,
categoryAccordionId: Int,
configObject: Config,
) : ProcessedOptionFirm(categoryAccordionId, configObject) {
val managedConfig = managedOption.element
override fun getDebugDeclarationLocation(): String {
return "FirmamentOption:${managedConfig.name}:${managedOption.propertyName}"
}
override fun getName(): String {
return managedOption.labelText.string
}
override fun getDescription(): String {
return "Missing description" // TODO: add description
}
override fun explicitNotifyChange() {
managedConfig.save()
}
}