forked from qt-creator/qt-creator
EffectMaker: Don't clear effect name when clearing the nodes list
Change-Id: Ic805d72b2600db88dab9887552faa8aef19423d7 Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
This commit is contained in:
@@ -65,12 +65,12 @@ Item {
|
|||||||
|
|
||||||
EffectMakerTopBar {
|
EffectMakerTopBar {
|
||||||
onAddClicked: {
|
onAddClicked: {
|
||||||
root.onSaveChangesCallback = () => { EffectMakerBackend.effectMakerModel.clear() }
|
root.onSaveChangesCallback = () => { EffectMakerBackend.effectMakerModel.clear(true) }
|
||||||
|
|
||||||
if (EffectMakerBackend.effectMakerModel.hasUnsavedChanges)
|
if (EffectMakerBackend.effectMakerModel.hasUnsavedChanges)
|
||||||
saveChangesDialog.open()
|
saveChangesDialog.open()
|
||||||
else
|
else
|
||||||
EffectMakerBackend.effectMakerModel.clear()
|
EffectMakerBackend.effectMakerModel.clear(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
onSaveClicked: {
|
onSaveClicked: {
|
||||||
|
@@ -192,15 +192,18 @@ void EffectMakerModel::removeNode(int idx)
|
|||||||
emit nodesChanged();
|
emit nodesChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
void EffectMakerModel::clear()
|
void EffectMakerModel::clear(bool clearName)
|
||||||
{
|
{
|
||||||
beginResetModel();
|
beginResetModel();
|
||||||
qDeleteAll(m_nodes);
|
qDeleteAll(m_nodes);
|
||||||
m_nodes.clear();
|
m_nodes.clear();
|
||||||
endResetModel();
|
endResetModel();
|
||||||
setHasUnsavedChanges(!m_currentComposition.isEmpty());
|
|
||||||
|
if (clearName)
|
||||||
setCurrentComposition("");
|
setCurrentComposition("");
|
||||||
|
|
||||||
|
setHasUnsavedChanges(!m_currentComposition.isEmpty());
|
||||||
|
|
||||||
setIsEmpty(true);
|
setIsEmpty(true);
|
||||||
emit nodesChanged();
|
emit nodesChanged();
|
||||||
}
|
}
|
||||||
@@ -683,7 +686,7 @@ void EffectMakerModel::saveComposition(const QString &name)
|
|||||||
|
|
||||||
void EffectMakerModel::openComposition(const QString &path)
|
void EffectMakerModel::openComposition(const QString &path)
|
||||||
{
|
{
|
||||||
clear();
|
clear(true);
|
||||||
|
|
||||||
const QString effectName = QFileInfo(path).baseName();
|
const QString effectName = QFileInfo(path).baseName();
|
||||||
setCurrentComposition(effectName);
|
setCurrentComposition(effectName);
|
||||||
|
@@ -66,7 +66,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 clear();
|
Q_INVOKABLE void clear(bool clearName = false);
|
||||||
Q_INVOKABLE void assignToSelected();
|
Q_INVOKABLE void assignToSelected();
|
||||||
Q_INVOKABLE QString getUniqueEffectName() const;
|
Q_INVOKABLE QString getUniqueEffectName() const;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user