[Editor] Create DoubleParameter
This commit is contained in:
@@ -0,0 +1,39 @@
|
|||||||
|
package com.bartlomiejpluta.base.editor.common.parameter.model
|
||||||
|
|
||||||
|
import javafx.beans.property.DoubleProperty
|
||||||
|
import javafx.beans.property.Property
|
||||||
|
import javafx.scene.control.Spinner
|
||||||
|
|
||||||
|
class DoubleParameter(
|
||||||
|
key: String,
|
||||||
|
initialValue: Double,
|
||||||
|
minValue: Double,
|
||||||
|
maxValue: Double,
|
||||||
|
step: Double,
|
||||||
|
editable: Boolean = true,
|
||||||
|
autocommit: Boolean = false,
|
||||||
|
onCommit: (oldValue: Double, newValue: Double, submit: () -> Unit) -> Unit = { _, _, submit -> submit() },
|
||||||
|
) : Parameter<Double>(key, initialValue, editable, autocommit, onCommit) {
|
||||||
|
override val editor = Spinner<Double>(minValue, maxValue, initialValue, step).apply {
|
||||||
|
isEditable = true
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
key: String,
|
||||||
|
initialValue: Double,
|
||||||
|
editable: Boolean = true,
|
||||||
|
autocommit: Boolean = false,
|
||||||
|
onCommit: (oldValue: Double, newValue: Double, submit: () -> Unit) -> Unit = { _, _, submit -> submit() }
|
||||||
|
) : this(key, initialValue, Double.MIN_VALUE, Double.MAX_VALUE, 0.1, editable, autocommit, onCommit)
|
||||||
|
|
||||||
|
override val editorValueProperty: Property<Double>
|
||||||
|
get() = editor.valueFactory.valueProperty()
|
||||||
|
|
||||||
|
init {
|
||||||
|
super.init()
|
||||||
|
}
|
||||||
|
|
||||||
|
fun bindBidirectional(other: DoubleProperty) {
|
||||||
|
super.bindBidirectional(other.asObject())
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user