forked from qt-creator/qt-creator
GenerateQmlrc: Do not create package if user cancels the operation
Change-Id: Ie8f2bed23d6c9b4c8496b9b75310fc8cda823088 Reviewed-by: Burak Hancerli <burak.hancerli@qt.io> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
committed by
Thomas Hartmann
parent
ea03bfea10
commit
22ef184a09
@@ -77,9 +77,9 @@ QTableWidget* GenerateResource::createFilesTable(const QList<ResourceFile> &file
|
|||||||
return table;
|
return table;
|
||||||
}
|
}
|
||||||
|
|
||||||
QStringList GenerateResource::getFileList(const QList<ResourceFile> &fileNames)
|
std::optional<QStringList> GenerateResource::getFileList(const QList<ResourceFile> &fileNames)
|
||||||
{
|
{
|
||||||
QStringList result;
|
std::optional<QStringList> result;
|
||||||
QDialog *dialog = new QDialog(Core::ICore::dialogParent());
|
QDialog *dialog = new QDialog(Core::ICore::dialogParent());
|
||||||
dialog->setMinimumWidth(480);
|
dialog->setMinimumWidth(480);
|
||||||
dialog->setMinimumHeight(640);
|
dialog->setMinimumHeight(640);
|
||||||
@@ -118,7 +118,7 @@ QStringList GenerateResource::getFileList(const QList<ResourceFile> &fileNames)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
result = fileList;
|
result.emplace(fileList);
|
||||||
});
|
});
|
||||||
|
|
||||||
dialog->exec();
|
dialog->exec();
|
||||||
@@ -311,7 +311,10 @@ void GenerateResource::generateMenuEntry(QObject *parent)
|
|||||||
|
|
||||||
temp.close();
|
temp.close();
|
||||||
|
|
||||||
QStringList modifiedList = getFileList(fileList);
|
std::optional<QStringList> modifiedList = getFileList(fileList);
|
||||||
|
|
||||||
|
if (!modifiedList)
|
||||||
|
return;
|
||||||
|
|
||||||
if (!persistentFile.open(QIODevice::ReadWrite | QIODevice::Truncate))
|
if (!persistentFile.open(QIODevice::ReadWrite | QIODevice::Truncate))
|
||||||
return;
|
return;
|
||||||
@@ -323,7 +326,7 @@ void GenerateResource::generateMenuEntry(QObject *parent)
|
|||||||
persistentFile.write(firstLine.trimmed());
|
persistentFile.write(firstLine.trimmed());
|
||||||
writer.writeStartElement("qresource");
|
writer.writeStartElement("qresource");
|
||||||
|
|
||||||
for (QString file : modifiedList)
|
for (const QString &file : modifiedList.value())
|
||||||
writer.writeTextElement("file", file.trimmed());
|
writer.writeTextElement("file", file.trimmed());
|
||||||
|
|
||||||
writer.writeEndElement();
|
writer.writeEndElement();
|
||||||
@@ -446,7 +449,11 @@ void GenerateResource::generateMenuEntry(QObject *parent)
|
|||||||
|
|
||||||
temp.close();
|
temp.close();
|
||||||
persistentFile.close();
|
persistentFile.close();
|
||||||
QStringList modifiedList = getFileList(fileList);
|
std::optional<QStringList> modifiedList = getFileList(fileList);
|
||||||
|
|
||||||
|
if (!modifiedList)
|
||||||
|
return;
|
||||||
|
|
||||||
QTemporaryFile tempFile(projectPath.toString() + "/XXXXXXX.create.modifiedresource.qrc");
|
QTemporaryFile tempFile(projectPath.toString() + "/XXXXXXX.create.modifiedresource.qrc");
|
||||||
|
|
||||||
if (!tempFile.open())
|
if (!tempFile.open())
|
||||||
@@ -459,7 +466,7 @@ void GenerateResource::generateMenuEntry(QObject *parent)
|
|||||||
tempFile.write(firstLine.trimmed());
|
tempFile.write(firstLine.trimmed());
|
||||||
writer.writeStartElement("qresource");
|
writer.writeStartElement("qresource");
|
||||||
|
|
||||||
for (QString file : modifiedList)
|
for (const QString &file : modifiedList.value())
|
||||||
writer.writeTextElement("file", file.trimmed());
|
writer.writeTextElement("file", file.trimmed());
|
||||||
|
|
||||||
writer.writeEndElement();
|
writer.writeEndElement();
|
||||||
@@ -486,4 +493,3 @@ void GenerateResource::generateMenuEntry(QObject *parent)
|
|||||||
}
|
}
|
||||||
|
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
|
||||||
|
@@ -12,7 +12,7 @@ struct ResourceFile
|
|||||||
bool inProject;
|
bool inProject;
|
||||||
};
|
};
|
||||||
void generateMenuEntry(QObject *parent);
|
void generateMenuEntry(QObject *parent);
|
||||||
QStringList getFileList(const QList<ResourceFile> &);
|
std::optional<QStringList> getFileList(const QList<ResourceFile> &);
|
||||||
QTableWidget* createFilesTable(const QList<ResourceFile> &);
|
QTableWidget* createFilesTable(const QList<ResourceFile> &);
|
||||||
}
|
}
|
||||||
} // namespace QmlDesigner
|
} // namespace QmlDesigner
|
||||||
|
Reference in New Issue
Block a user