forked from qt-creator/qt-creator
ProjectNode: Let add/removeSubprojects operate on single files
That's the only way that is used. Change-Id: I57e7942f9dccf74ff7588c3bca0ccf05f528a3df Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
@@ -57,21 +57,6 @@ QList<ProjectAction> NimProjectNode::supportedActions(Node *node) const
|
||||
}
|
||||
}
|
||||
|
||||
bool NimProjectNode::addSubProjects(const QStringList &)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool NimProjectNode::canAddSubProject(const QString &) const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool NimProjectNode::removeSubProjects(const QStringList &)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool NimProjectNode::addFiles(const QStringList &filePaths, QStringList *)
|
||||
{
|
||||
return m_project.addFiles(filePaths);
|
||||
|
@@ -39,9 +39,6 @@ public:
|
||||
NimProjectNode(NimProject &project, const Utils::FileName &projectFilePath);
|
||||
|
||||
QList<ProjectExplorer::ProjectAction> supportedActions(Node *node) const override;
|
||||
bool canAddSubProject(const QString &) const override;
|
||||
bool addSubProjects(const QStringList &) override;
|
||||
bool removeSubProjects(const QStringList &) override;
|
||||
bool addFiles(const QStringList &filePaths, QStringList *) override;
|
||||
bool removeFiles(const QStringList &filePaths, QStringList *) override;
|
||||
bool deleteFiles(const QStringList &) override;
|
||||
|
@@ -175,7 +175,7 @@ void JsonSummaryPage::addToProject(const JsonWizard::GeneratorFiles &files)
|
||||
if (!folder)
|
||||
return;
|
||||
if (kind == IWizardFactory::ProjectWizard) {
|
||||
if (!static_cast<ProjectNode *>(folder)->addSubProjects(QStringList(generatedProject))) {
|
||||
if (!static_cast<ProjectNode *>(folder)->addSubProject(generatedProject)) {
|
||||
QMessageBox::critical(m_wizard, tr("Failed to Add to Project"),
|
||||
tr("Failed to add subproject \"%1\"\nto project \"%2\".")
|
||||
.arg(QDir::toNativeSeparators(generatedProject))
|
||||
|
@@ -3212,7 +3212,7 @@ void ProjectExplorerPluginPrivate::removeProject()
|
||||
RemoveFileDialog removeFileDialog(subProjectNode->filePath().toString(), ICore::mainWindow());
|
||||
removeFileDialog.setDeleteFileVisible(false);
|
||||
if (removeFileDialog.exec() == QDialog::Accepted)
|
||||
projectNode->removeSubProjects(QStringList() << subProjectNode->filePath().toString());
|
||||
projectNode->removeSubProject(subProjectNode->filePath().toString());
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -181,7 +181,7 @@ bool ProjectFileWizardExtension::processProject(
|
||||
if (!folder)
|
||||
return true;
|
||||
if (m_context->wizard->kind() == IWizardFactory::ProjectWizard) {
|
||||
if (!static_cast<ProjectNode *>(folder)->addSubProjects(QStringList(generatedProject))) {
|
||||
if (!static_cast<ProjectNode *>(folder)->addSubProject(generatedProject)) {
|
||||
*errorMessage = tr("Failed to add subproject \"%1\"\nto project \"%2\".")
|
||||
.arg(generatedProject).arg(folder->filePath().toUserOutput());
|
||||
return false;
|
||||
|
@@ -720,15 +720,15 @@ bool ProjectNode::canAddSubProject(const QString &proFilePath) const
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ProjectNode::addSubProjects(const QStringList &proFilePaths)
|
||||
bool ProjectNode::addSubProject(const QString &proFilePath)
|
||||
{
|
||||
Q_UNUSED(proFilePaths)
|
||||
Q_UNUSED(proFilePath)
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ProjectNode::removeSubProjects(const QStringList &proFilePaths)
|
||||
bool ProjectNode::removeSubProject(const QString &proFilePath)
|
||||
{
|
||||
Q_UNUSED(proFilePaths)
|
||||
Q_UNUSED(proFilePath)
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@@ -278,8 +278,8 @@ public:
|
||||
QString vcsTopic() const;
|
||||
|
||||
virtual bool canAddSubProject(const QString &proFilePath) const;
|
||||
virtual bool addSubProjects(const QStringList &proFilePaths);
|
||||
virtual bool removeSubProjects(const QStringList &proFilePaths);
|
||||
virtual bool addSubProject(const QString &proFile);
|
||||
virtual bool removeSubProject(const QString &proFilePath);
|
||||
|
||||
bool addFiles(const QStringList &filePaths, QStringList *notAdded = 0) override;
|
||||
bool removeFiles(const QStringList &filePaths, QStringList *notRemoved = 0) override;
|
||||
|
@@ -148,16 +148,16 @@ bool QmakePriFileNode::canAddSubProject(const QString &proFilePath) const
|
||||
return pri ? pri->canAddSubProject(proFilePath) : false;
|
||||
}
|
||||
|
||||
bool QmakePriFileNode::addSubProjects(const QStringList &proFilePaths)
|
||||
bool QmakePriFileNode::addSubProject(const QString &proFilePath)
|
||||
{
|
||||
QmakePriFile *pri = priFile();
|
||||
return pri ? pri->addSubProjects(proFilePaths) : false;
|
||||
return pri ? pri->addSubProject(proFilePath) : false;
|
||||
}
|
||||
|
||||
bool QmakePriFileNode::removeSubProjects(const QStringList &proFilePaths)
|
||||
bool QmakePriFileNode::removeSubProject(const QString &proFilePath)
|
||||
{
|
||||
QmakePriFile *pri = priFile();
|
||||
return pri ? pri->removeSubProjects(proFilePaths) : false;
|
||||
return pri ? pri->removeSubProjects(proFilePath) : false;
|
||||
}
|
||||
|
||||
bool QmakePriFileNode::addFiles(const QStringList &filePaths, QStringList *notAdded)
|
||||
|
@@ -53,8 +53,8 @@ public:
|
||||
|
||||
bool canAddSubProject(const QString &proFilePath) const override;
|
||||
|
||||
bool addSubProjects(const QStringList &proFilePaths) override;
|
||||
bool removeSubProjects(const QStringList &proFilePaths) override;
|
||||
bool addSubProject(const QString &proFilePath) override;
|
||||
bool removeSubProject(const QString &proFilePath) override;
|
||||
|
||||
bool addFiles(const QStringList &filePaths, QStringList *notAdded = nullptr) override;
|
||||
bool removeFiles(const QStringList &filePaths, QStringList *notRemoved = nullptr) override;
|
||||
|
@@ -474,13 +474,11 @@ static QString simplifyProFilePath(const QString &proFilePath)
|
||||
return proFilePath;
|
||||
}
|
||||
|
||||
bool QmakePriFile::addSubProjects(const QStringList &proFilePaths)
|
||||
bool QmakePriFile::addSubProject(const QString &proFile)
|
||||
{
|
||||
QStringList uniqueProFilePaths;
|
||||
foreach (const QString &proFile, proFilePaths) {
|
||||
if (!m_recursiveEnumerateFiles.contains(FileName::fromString(proFile)))
|
||||
uniqueProFilePaths.append(simplifyProFilePath(proFile));
|
||||
}
|
||||
|
||||
QStringList failedFiles;
|
||||
changeFiles(QLatin1String(Constants::PROFILE_MIMETYPE), uniqueProFilePaths, &failedFiles, AddToProFile);
|
||||
@@ -488,10 +486,10 @@ bool QmakePriFile::addSubProjects(const QStringList &proFilePaths)
|
||||
return failedFiles.isEmpty();
|
||||
}
|
||||
|
||||
bool QmakePriFile::removeSubProjects(const QStringList &proFilePaths)
|
||||
bool QmakePriFile::removeSubProjects(const QString &proFilePath)
|
||||
{
|
||||
QStringList failedOriginalFiles;
|
||||
changeFiles(QLatin1String(Constants::PROFILE_MIMETYPE), proFilePaths, &failedOriginalFiles, RemoveFromProFile);
|
||||
changeFiles(QLatin1String(Constants::PROFILE_MIMETYPE), QStringList(proFilePath), &failedOriginalFiles, RemoveFromProFile);
|
||||
|
||||
QStringList simplifiedProFiles = Utils::transform(failedOriginalFiles, &simplifyProFilePath);
|
||||
|
||||
|
@@ -134,8 +134,8 @@ public:
|
||||
// ProjectNode interface
|
||||
virtual bool canAddSubProject(const QString &proFilePath) const;
|
||||
|
||||
virtual bool addSubProjects(const QStringList &proFilePaths);
|
||||
virtual bool removeSubProjects(const QStringList &proFilePaths);
|
||||
virtual bool addSubProject(const QString &proFile);
|
||||
virtual bool removeSubProjects(const QString &proFilePath);
|
||||
|
||||
virtual bool addFiles(const QStringList &filePaths, QStringList *notAdded = nullptr);
|
||||
virtual bool removeFiles(const QStringList &filePaths, QStringList *notRemoved = nullptr);
|
||||
|
Reference in New Issue
Block a user