diff --git a/orx-gui/src/main/kotlin/Gui.kt b/orx-gui/src/main/kotlin/Gui.kt index 9ab23b0a..c0385f76 100644 --- a/orx-gui/src/main/kotlin/Gui.kt +++ b/orx-gui/src/main/kotlin/Gui.kt @@ -321,10 +321,13 @@ class GUI : Extension { label = parameter.label events.valueChanged.subscribe { value = it.newValue - (parameter.property as KMutableProperty1).set(obj, it.newValue) + setAndPersist(compartment.label, parameter.property as KMutableProperty1, obj, it.newValue) onChangeListener?.invoke(parameter.property!!.name, it.newValue) } - value = (parameter.property as KMutableProperty1).get(obj) + getPersistedOrDefault(compartment.label, parameter.property as KMutableProperty1, obj)?.let { + value = it + setAndPersist(compartment.label, parameter.property as KMutableProperty1, obj, it) + } } } ParameterType.Text -> {