diff --git a/share/qtcreator/qmldesigner/propertyeditor/Qt/IntEditor.qml b/share/qtcreator/qmldesigner/propertyeditor/Qt/IntEditor.qml index bc0b50f400e49ef4db084961b135f5be10a71a8d..2fe97b5bdd74c252ff308c1ea51ae64cdafb5696 100644 --- a/share/qtcreator/qmldesigner/propertyeditor/Qt/IntEditor.qml +++ b/share/qtcreator/qmldesigner/propertyeditor/Qt/IntEditor.qml @@ -31,10 +31,6 @@ QWidget { intEditor.backendValue === null) ? null : intEditor.backendValue.value; - onBackendValueValueChanged: { - intSlider.value = intEditor.backendValue.value; - } - minimum: minimumValue maximum: maximumValue baseStateFlag: intEditor.baseStateFlag @@ -54,12 +50,16 @@ QWidget { minimum: minimumValue maximum: maximumValue singleStep: step + property int valueFromBackend: intEditor.backendValue.value; + onValueFromBackendChanged: { + if (intSlider.maximum < valueFromBackend) + intSlider.maximum = valueFromBackend; + if (intSlider.minimum > valueFromBackend) + intSlider.minimum = valueFromBackend; + intSlider.value = valueFromBackend; + } - value: (backendValue == undefined - || backendValue == null - || backendValue.value == undefined - || backendValue.value == null) ? 0 : backendValue.value onValueChanged: { if (backendValue != undefined && backendValue != null) backendValue.value = value; diff --git a/share/qtcreator/qmldesigner/propertyeditor/Qt/SpinBox.qml b/share/qtcreator/qmldesigner/propertyeditor/Qt/SpinBox.qml index 6ceb50f461d99766f755d09fb2fc5d4ae249746d..90596f2b53945adf373eee502ac116f6b86b72b6 100644 --- a/share/qtcreator/qmldesigner/propertyeditor/Qt/SpinBox.qml +++ b/share/qtcreator/qmldesigner/propertyeditor/Qt/SpinBox.qml @@ -75,7 +75,11 @@ QWidget { //This is a special spinBox that does color coding for states property int valueFromBackend: spinBox.backendValue.value; onValueFromBackendChanged: { - readingFromBackend = true; + readingFromBackend = true; + if (maximum < valueFromBackend) + maximum = valueFromBackend; + if (minimum > valueFromBackend) + minimum = valueFromBackend; value = valueFromBackend; readingFromBackend = false; evaluate();