aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@qt.io>2024-02-08 15:52:51 +0200
committerMiikka Heikkinen <miikka.heikkinen@qt.io>2024-02-08 14:26:29 +0000
commitca6e6e4f3ec5cfb89cf7b58c3abfde31f73c5de2 (patch)
treec14cc67187f3d89574235325e9d960ada6a81810
parentc491d652abf81970ca345958e954fc9e278c0a5c (diff)
QmlDesigner: Fix validation on integer spinboxes
Now spinboxes use IntValidator if decimals is set to zero. Fixes: QDS-11922 Change-Id: Ibe8c8a18294a6764a0cd2182d09c30cdf9fb27cc Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/StudioControls/RealSpinBox.qml13
1 files changed, 11 insertions, 2 deletions
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/StudioControls/RealSpinBox.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/StudioControls/RealSpinBox.qml
index 4f51d7aa1f..9072a2de8a 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/StudioControls/RealSpinBox.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/StudioControls/RealSpinBox.qml
@@ -95,7 +95,7 @@ T.SpinBox {
control.focus = false
}
- validator: DoubleValidator {
+ DoubleValidator {
id: doubleValidator
locale: control.locale.name
notation: DoubleValidator.StandardNotation
@@ -104,6 +104,15 @@ T.SpinBox {
top: Math.max(control.realFrom, control.realTo)
}
+ IntValidator {
+ id: intValidator
+ locale: control.locale.name
+ bottom: Math.round(Math.min(control.realFrom, control.realTo))
+ top: Math.round(Math.max(control.realFrom, control.realTo))
+ }
+
+ validator: control.decimals === 0 ? intValidator : doubleValidator
+
ActionIndicator {
id: actionIndicator
style: control.style
@@ -153,7 +162,7 @@ T.SpinBox {
id: spinBoxInput
style: control.style
__parentControl: control
- validator: doubleValidator
+ validator: control.validator
function handleEditingFinished() {
control.checkAndClearFocus()