aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/pl/treksoft/kvision/form/range
diff options
context:
space:
mode:
authorRobert Jaros <rjaros@finn.pl>2020-05-09 23:53:57 +0200
committerRobert Jaros <rjaros@finn.pl>2020-05-09 23:53:57 +0200
commit134cb687c4e05fd81a03b682505f9fb9d741a8d7 (patch)
treef9f41f28c01dc29d1d4fdd576cc9b21958fd9c3b /src/main/kotlin/pl/treksoft/kvision/form/range
parent4a2aa49e0e561c1bc25aa962449fa2fcce9207ba (diff)
downloadkvision-134cb687c4e05fd81a03b682505f9fb9d741a8d7.tar.gz
kvision-134cb687c4e05fd81a03b682505f9fb9d741a8d7.tar.bz2
kvision-134cb687c4e05fd81a03b682505f9fb9d741a8d7.zip
Add new className parameter to all DSL builder functions.
Diffstat (limited to 'src/main/kotlin/pl/treksoft/kvision/form/range')
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/form/range/Range.kt2
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/form/range/RangeInput.kt17
2 files changed, 16 insertions, 3 deletions
diff --git a/src/main/kotlin/pl/treksoft/kvision/form/range/Range.kt b/src/main/kotlin/pl/treksoft/kvision/form/range/Range.kt
index a54ccddb..dc8e57a0 100644
--- a/src/main/kotlin/pl/treksoft/kvision/form/range/Range.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/form/range/Range.kt
@@ -140,7 +140,7 @@ open class Range(
this.id = idc
this.name = name
}
- final override val flabel: FieldLabel = FieldLabel(idc, label, rich)
+ final override val flabel: FieldLabel = FieldLabel(idc, label, rich, setOf("control-label"))
final override val invalidFeedback: InvalidFeedback = InvalidFeedback().apply { visible = false }
init {
diff --git a/src/main/kotlin/pl/treksoft/kvision/form/range/RangeInput.kt b/src/main/kotlin/pl/treksoft/kvision/form/range/RangeInput.kt
index dc9ad7d4..4649c654 100644
--- a/src/main/kotlin/pl/treksoft/kvision/form/range/RangeInput.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/form/range/RangeInput.kt
@@ -30,6 +30,7 @@ import pl.treksoft.kvision.core.Widget
import pl.treksoft.kvision.form.FormInput
import pl.treksoft.kvision.form.InputSize
import pl.treksoft.kvision.form.ValidationStatus
+import pl.treksoft.kvision.utils.set
internal const val DEFAULT_STEP = 1
@@ -52,6 +53,7 @@ open class RangeInput(
* Range input value.
*/
var value by refreshOnUpdate(value ?: (min as Number?)) { refreshState() }
+
/**
* The value attribute of the generated HTML input element.
*
@@ -59,38 +61,47 @@ open class RangeInput(
* bound to the range input value.
*/
var startValue by refreshOnUpdate(value) { this.value = it; refresh() }
+
/**
* Minimal value.
*/
var min by refreshOnUpdate(min)
+
/**
* Maximal value.
*/
var max by refreshOnUpdate(max)
+
/**
* Step value.
*/
var step by refreshOnUpdate(step)
+
/**
* The name attribute of the generated HTML input element.
*/
override var name: String? by refreshOnUpdate()
+
/**
* Determines if the field is disabled.
*/
override var disabled by refreshOnUpdate(false)
+
/**
* Determines if the range input is automatically focused.
*/
var autofocus: Boolean? by refreshOnUpdate()
+
/**
* Determines if the range input is read-only.
*/
var readonly: Boolean? by refreshOnUpdate()
+
/**
* The size of the input.
*/
override var size: InputSize? by refreshOnUpdate()
+
/**
* The validation status of the input.
*/
@@ -221,9 +232,11 @@ open class RangeInput(
*/
fun Container.rangeInput(
value: Number? = null, min: Number = 0, max: Number = 100, step: Number = DEFAULT_STEP,
- classes: Set<String> = setOf(), init: (RangeInput.() -> Unit)? = null
+ classes: Set<String>? = null,
+ className: String? = null,
+ init: (RangeInput.() -> Unit)? = null
): RangeInput {
- val rangeInput = RangeInput(value, min, max, step, classes).apply { init?.invoke(this) }
+ val rangeInput = RangeInput(value, min, max, step, classes ?: className.set).apply { init?.invoke(this) }
this.add(rangeInput)
return rangeInput
}