aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator/qmldesigner/effectComposerQmlSources
diff options
context:
space:
mode:
Diffstat (limited to 'share/qtcreator/qmldesigner/effectComposerQmlSources')
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposer.qml2
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerPreview.qml8
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerTopBar.qml9
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNode.qml2
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNodeUniform.qml33
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/SaveAsDialog.qml8
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/ValueColor.qml10
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/ValueFloat.qml11
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/ValueInt.qml6
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec2.qml12
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec3.qml18
-rw-r--r--share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec4.qml24
12 files changed, 113 insertions, 30 deletions
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposer.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposer.qml
index dda1d93ff9..305bbc7925 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposer.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposer.qml
@@ -365,7 +365,7 @@ ColumnLayout {
Connections {
id: dragConnection
target: root.draggedSec
- onYChanged: root.handleDragMove()
+ function onYChanged() { root.handleDragMove() }
}
Timer {
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerPreview.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerPreview.qml
index c832b2f370..c0c47f7366 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerPreview.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerPreview.qml
@@ -21,6 +21,7 @@ Column {
readonly property int updateDelay: 100
readonly property int previewMargin: 5
+ readonly property int extraMargin: 200
property real previewScale: 1
@@ -246,6 +247,8 @@ Column {
layer.enabled: true
layer.mipmap: true
layer.smooth: true
+ layer.sourceRect: Qt.rect(-root.extraMargin, -root.extraMargin,
+ width + root.extraMargin * 2, height + root.extraMargin * 2)
visible: false
Image {
@@ -347,10 +350,6 @@ Column {
width: source.width
height: source.height
anchors.centerIn: parent
- // Cache the layer. This way heavy shaders rendering doesn't
- // slow down code editing & rest of the UI.
- layer.enabled: true
- layer.smooth: true
}
}
@@ -383,7 +382,6 @@ Column {
Connections {
target: effectComposerModel
function onShadersBaked() {
- console.log("Shaders Baked!")
updateTimer.restart()
}
}
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerTopBar.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerTopBar.qml
index d5ac4461c4..799dbeeddc 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerTopBar.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectComposerTopBar.qml
@@ -48,7 +48,7 @@ Rectangle {
style: StudioTheme.Values.viewBarButtonStyle
buttonIcon: StudioTheme.Constants.saveAs_medium
tooltip: qsTr("Save current composition with a new name")
- enabled: root.backendModel ? root.backendModel.isEnabled && !root.backendModel.isEmpty
+ enabled: root.backendModel ? root.backendModel.isEnabled && root.backendModel.currentComposition !== ""
: false
onClicked: root.saveAsClicked()
@@ -58,7 +58,8 @@ Rectangle {
style: StudioTheme.Values.viewBarButtonStyle
buttonIcon: StudioTheme.Constants.assignTo_medium
tooltip: qsTr("Assign current composition to selected item")
- enabled: root.backendModel ? root.backendModel.isEnabled
+ enabled: root.backendModel ? root.backendModel.hasValidTarget
+ && root.backendModel.isEnabled
&& root.backendModel.currentComposition !== ""
: false
@@ -88,8 +89,8 @@ Rectangle {
2. Adjust the effect nodes properties
3. Change the order of the effects, if you like
4. See the preview
-5. Save in the library, if you wish to reuse the effect later") // TODO: revise with doc engineer
+5. Save in the assets library, if you wish to reuse the effect later")
- onClicked: Qt.openUrlExternally("https://doc.qt.io/qtdesignstudio/qt-using-effect-maker-effects.html")
+ onClicked: Qt.openUrlExternally("https://doc.qt.io/qtdesignstudio/qtquick-effect-composer-view.html")
}
}
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNode.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNode.qml
index 6defa3b092..a606461b5c 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNode.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNode.qml
@@ -43,6 +43,8 @@ HelperWidgets.Section {
EffectCompositionNodeUniform {
width: root.width
+
+ onReset: nodeUniformsModel.resetData(index)
}
}
}
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNodeUniform.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNodeUniform.qml
index 71cbf94f8b..7c3214c5fa 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNodeUniform.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/EffectCompositionNodeUniform.qml
@@ -13,9 +13,10 @@ Item {
id: root
height: layout.implicitHeight
-
visible: !uniformUseCustomValue
+ signal reset()
+
Component.onCompleted: {
if (uniformType === "int") {
if (uniformControlType === "channel")
@@ -49,10 +50,11 @@ Item {
RowLayout {
id: layout
- spacing: 20
anchors.fill: parent
Text {
+ id: textName
+
text: uniformDisplayName
color: StudioTheme.Values.themeTextColor
font.pixelSize: StudioTheme.Values.baseFontSize
@@ -63,11 +65,38 @@ Item {
elide: Text.ElideRight
HelperWidgets.ToolTipArea {
+ id: tooltipArea
+
anchors.fill: parent
tooltip: uniformDescription
}
}
+ Item {
+ Layout.preferredHeight: 30
+ Layout.preferredWidth: 30
+
+ MouseArea {
+ id: mouseArea
+
+ anchors.fill: parent
+ hoverEnabled: true
+ }
+
+ HelperWidgets.IconButton {
+ id: iconButton
+
+ buttonSize: 24
+ icon: StudioTheme.Constants.reload_medium
+ iconSize: 16
+ anchors.centerIn: parent
+ visible: mouseArea.containsMouse || iconButton.containsMouse
+ tooltip: qsTr("Reset value")
+ onClicked: root.reset()
+ }
+
+ }
+
Loader {
id: valueLoader
Layout.fillWidth: true
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/SaveAsDialog.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/SaveAsDialog.qml
index d139ba9205..65b01be457 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/SaveAsDialog.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/SaveAsDialog.qml
@@ -50,11 +50,13 @@ StudioControls.Dialog {
if (/[^A-Za-z0-9_]+/.test(text))
errMsg = qsTr("Name contains invalid characters.")
else if (!/^[A-Z]/.test(text))
- errMsg = qsTr("Name must start with a capital letter")
+ errMsg = qsTr("Name must start with a capital letter.")
else if (text.length < 3)
- errMsg = qsTr("Name must have at least 3 characters")
+ errMsg = qsTr("Name must have at least 3 characters.")
else if (/\s/.test(text))
- errMsg = qsTr("Name cannot contain white space")
+ errMsg = qsTr("Name cannot contain white space.")
+ else if (EffectComposerBackend.effectComposerModel.nameExists(text))
+ errMsg = qsTr("Name is already taken.")
emptyText.text = errMsg
btnSave.enabled = errMsg.length === 0
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueColor.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueColor.qml
index 4b00bd7613..f7482260b5 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueColor.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueColor.qml
@@ -15,8 +15,14 @@ Row {
StudioControls.ColorEditor {
actionIndicatorVisible: false
- Component.onCompleted: color = uniformValue
+ // color: uniformValue binding can get overwritten by normal operation of the control
+ property color resetValue: uniformValue
- onColorChanged: uniformValue = color
+ onResetValueChanged: color = uniformValue
+ Component.onCompleted: color = uniformValue
+ onColorChanged: {
+ if (uniformValue !== color)
+ uniformValue = color
+ }
}
}
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueFloat.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueFloat.qml
index 7348d6668b..6b723a9bc5 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueFloat.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueFloat.qml
@@ -14,6 +14,10 @@ Row {
HelperWidgets.DoubleSpinBox {
id: spinBox
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue
+ onResetValueChanged: value = resetValue
+
width: 60
spinBoxIndicatorVisible: false
inputHAlignment: Qt.AlignHCenter
@@ -22,7 +26,7 @@ Row {
value: uniformValue
stepSize: .01
decimals: 2
- onValueChanged: uniformValue = value
+ onValueModified: uniformValue = value
}
StudioControls.Slider {
@@ -38,8 +42,9 @@ Row {
to: uniformMaxValue
value: uniformValue
onMoved: {
- uniformValue = value
- spinBox.value = value // binding isn't working for this property so update it
+ let fixedValue = Number.parseFloat(value).toFixed(slider.decimals)
+ uniformValue = fixedValue
+ spinBox.value = fixedValue // binding isn't working for this property so update it
}
}
}
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueInt.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueInt.qml
index 89f571c8cb..d67929168a 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueInt.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueInt.qml
@@ -14,6 +14,10 @@ Row {
HelperWidgets.DoubleSpinBox {
id: spinBox
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue
+ onResetValueChanged: value = resetValue
+
width: 60
spinBoxIndicatorVisible: false
inputHAlignment: Qt.AlignHCenter
@@ -22,7 +26,7 @@ Row {
value: uniformValue
stepSize: 1
decimals: 0
- onValueChanged: uniformValue = Math.round(value)
+ onValueModified: uniformValue = Math.round(value)
}
StudioControls.Slider {
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec2.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec2.qml
index b703d5f184..adb4fe9905 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec2.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec2.qml
@@ -15,6 +15,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vX
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.x
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -26,7 +30,7 @@ RowLayout {
value: uniformValue.x
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.x = value
+ onValueModified: uniformValue.x = value
}
Item { // spacer
@@ -51,6 +55,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vY
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.y
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -62,7 +70,7 @@ RowLayout {
value: uniformValue.y
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.y = value
+ onValueModified: uniformValue.y = value
}
Item { // spacer
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec3.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec3.qml
index d59b63a514..78573c48f6 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec3.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec3.qml
@@ -15,6 +15,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vX
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.x
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -26,7 +30,7 @@ RowLayout {
value: uniformValue.x
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.x = value
+ onValueModified: uniformValue.x = value
}
Item { // spacer
@@ -51,6 +55,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vY
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.y
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -62,7 +70,7 @@ RowLayout {
value: uniformValue.y
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.y = value
+ onValueModified: uniformValue.y = value
}
Item { // spacer
@@ -87,6 +95,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vZ
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.z
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -98,7 +110,7 @@ RowLayout {
value: uniformValue.z
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.z = value
+ onValueModified: uniformValue.z = value
}
Item { // spacer
diff --git a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec4.qml b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec4.qml
index 7e930abf81..61ce8e6389 100644
--- a/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec4.qml
+++ b/share/qtcreator/qmldesigner/effectComposerQmlSources/ValueVec4.qml
@@ -15,6 +15,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vX
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.x
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -26,7 +30,7 @@ RowLayout {
value: uniformValue.x
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.x = value
+ onValueModified: uniformValue.x = value
}
Item { // spacer
@@ -51,6 +55,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vY
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.y
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -62,7 +70,7 @@ RowLayout {
value: uniformValue.y
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.y = value
+ onValueModified: uniformValue.y = value
}
Item { // spacer
@@ -87,6 +95,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vZ
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.z
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -98,7 +110,7 @@ RowLayout {
value: uniformValue.z
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.z = value
+ onValueModified: uniformValue.z = value
}
Item { // spacer
@@ -123,6 +135,10 @@ RowLayout {
HelperWidgets.DoubleSpinBox {
id: vW
+ // value: uniformValue binding can get overwritten by normal operation of the control
+ property double resetValue: uniformValue.w
+ onResetValueChanged: value = resetValue
+
Layout.fillWidth: true
Layout.minimumWidth: 30
Layout.maximumWidth: 60
@@ -134,7 +150,7 @@ RowLayout {
value: uniformValue.w
stepSize: .01
decimals: 2
- onValueChanged: uniformValue.w = value
+ onValueModified: uniformValue.w = value
}
Item { // spacer