forked from qt-creator/qt-creator
EffectMaker: Add clear all nodes button
Fixes: QDS-11335 Change-Id: I5d0e0e11baabe780c19234410814a9f6eb45130d Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
This commit is contained in:
@@ -55,6 +55,21 @@ Item {
|
|||||||
mainRoot: root
|
mainRoot: root
|
||||||
|
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
x: 5
|
||||||
|
width: parent.width - 50
|
||||||
|
}
|
||||||
|
|
||||||
|
HelperWidgets.AbstractButton {
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.rightMargin: 5
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
|
||||||
|
style: StudioTheme.Values.viewBarButtonStyle
|
||||||
|
buttonIcon: StudioTheme.Constants.clearList_medium
|
||||||
|
tooltip: qsTr("Remove all effect nodes.")
|
||||||
|
enabled: !EffectMakerBackend.effectMakerModel.isEmpty
|
||||||
|
|
||||||
|
onClicked: EffectMakerBackend.effectMakerModel.removeAllNodes()
|
||||||
}
|
}
|
||||||
|
|
||||||
HelperWidgets.AbstractButton {
|
HelperWidgets.AbstractButton {
|
||||||
@@ -64,7 +79,7 @@ Item {
|
|||||||
|
|
||||||
style: StudioTheme.Values.viewBarButtonStyle
|
style: StudioTheme.Values.viewBarButtonStyle
|
||||||
buttonIcon: StudioTheme.Constants.code
|
buttonIcon: StudioTheme.Constants.code
|
||||||
tooltip: qsTr("Open Shader in Code Editor")
|
tooltip: qsTr("Open Shader in Code Editor.")
|
||||||
visible: false // TODO: to be implemented
|
visible: false // TODO: to be implemented
|
||||||
|
|
||||||
onClicked: {} // TODO
|
onClicked: {} // TODO
|
||||||
|
@@ -12,8 +12,6 @@ StudioControls.ComboBox {
|
|||||||
id: root
|
id: root
|
||||||
|
|
||||||
actionIndicatorVisible: false
|
actionIndicatorVisible: false
|
||||||
x: 5
|
|
||||||
width: parent.width - 50
|
|
||||||
|
|
||||||
model: [qsTr("+ Add Effect")]
|
model: [qsTr("+ Add Effect")]
|
||||||
|
|
||||||
|
@@ -129,8 +129,7 @@ void EffectMakerModel::moveNode(int fromIdx, int toIdx)
|
|||||||
void EffectMakerModel::removeNode(int idx)
|
void EffectMakerModel::removeNode(int idx)
|
||||||
{
|
{
|
||||||
beginRemoveRows({}, idx, idx);
|
beginRemoveRows({}, idx, idx);
|
||||||
CompositionNode *node = m_nodes.at(idx);
|
CompositionNode *node = m_nodes.takeAt(idx);
|
||||||
m_nodes.removeAt(idx);
|
|
||||||
delete node;
|
delete node;
|
||||||
endRemoveRows();
|
endRemoveRows();
|
||||||
|
|
||||||
@@ -140,6 +139,16 @@ void EffectMakerModel::removeNode(int idx)
|
|||||||
bakeShaders();
|
bakeShaders();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void EffectMakerModel::removeAllNodes()
|
||||||
|
{
|
||||||
|
beginResetModel();
|
||||||
|
qDeleteAll(m_nodes);
|
||||||
|
m_nodes.clear();
|
||||||
|
endResetModel();
|
||||||
|
|
||||||
|
setIsEmpty(true);
|
||||||
|
}
|
||||||
|
|
||||||
QString EffectMakerModel::fragmentShader() const
|
QString EffectMakerModel::fragmentShader() const
|
||||||
{
|
{
|
||||||
return m_fragmentShader;
|
return m_fragmentShader;
|
||||||
|
@@ -63,6 +63,7 @@ public:
|
|||||||
|
|
||||||
Q_INVOKABLE void moveNode(int fromIdx, int toIdx);
|
Q_INVOKABLE void moveNode(int fromIdx, int toIdx);
|
||||||
Q_INVOKABLE void removeNode(int idx);
|
Q_INVOKABLE void removeNode(int idx);
|
||||||
|
Q_INVOKABLE void removeAllNodes();
|
||||||
|
|
||||||
bool shadersUpToDate() const;
|
bool shadersUpToDate() const;
|
||||||
void setShadersUpToDate(bool newShadersUpToDate);
|
void setShadersUpToDate(bool newShadersUpToDate);
|
||||||
|
Reference in New Issue
Block a user