aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml
diff options
context:
space:
mode:
Diffstat (limited to 'share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml')
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml32
1 files changed, 27 insertions, 5 deletions
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml
index 536877b58e..8c12d37bb5 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml
@@ -42,7 +42,13 @@ Column {
property variant backendValue
- property variant value: backendValue.value
+ property variant value: {
+ if (isVector3D)
+ return Qt.rgba(backendValue.value.x, backendValue.value.y, backendValue.value.z, 1);
+ else
+ return backendValue.value;
+
+ }
property alias gradientPropertyName: gradientLine.gradientPropertyName
@@ -52,6 +58,8 @@ Column {
property color originalColor
+ property bool isVector3D: false
+
function isNotInGradientMode() {
return (buttonRow.checkedIndex === 0 || transparent)
}
@@ -70,8 +78,15 @@ Column {
interval: 100
running: false
onTriggered: {
- if (backendValue !== undefined)
- backendValue.value = colorEditor.color
+ if (colorEditor.backendValue !== undefined) {
+ if (isVector3D) {
+ colorEditor.backendValue.value = Qt.vector3d(colorEditor.color.r,
+ colorEditor.color.g,
+ colorEditor.color.b);
+ } else {
+ colorEditor.backendValue.value = colorEditor.color;
+ }
+ }
}
}
@@ -231,8 +246,15 @@ Column {
onCommitData: {
colorEditor.color = colorFromString(textField.text)
- if (isNotInGradientMode())
- backendValue.value = colorEditor.color
+ if (isNotInGradientMode()) {
+ if (colorEditor.isVector3D) {
+ backendValue.value = Qt.vector3d(colorEditor.color.r,
+ colorEditor.color.g,
+ colorEditor.color.b);
+ } else {
+ backendValue.value = colorEditor.color;
+ }
+ }
}
Layout.fillWidth: true