From 8b2eeb9c5f7f909a7067270854619af708e25e22 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Thu, 2 Sep 2010 12:14:27 +0200 Subject: [PATCH] Get rid of virtual generatedProjectFilePath() --- src/plugins/coreplugin/basefilewizard.cpp | 10 ++----- src/plugins/coreplugin/basefilewizard.h | 3 --- src/plugins/coreplugin/ifilewizardextension.h | 5 +--- .../genericprojectwizard.cpp | 11 -------- .../genericprojectwizard.h | 2 -- .../customwizard/customwizard.cpp | 7 ----- .../customwizard/customwizard.h | 1 - .../projectfilewizardextension.cpp | 26 ++++++++++++------- .../projectfilewizardextension.h | 5 +--- .../customwidgetwizard/customwidgetwizard.cpp | 11 -------- .../customwidgetwizard/customwidgetwizard.h | 1 - .../wizards/consoleappwizard.cpp | 9 ------- .../wizards/consoleappwizard.h | 2 -- .../wizards/emptyprojectwizard.cpp | 8 ------ .../wizards/emptyprojectwizard.h | 2 -- .../wizards/guiappwizard.cpp | 9 ------- .../qt4projectmanager/wizards/guiappwizard.h | 2 -- .../wizards/librarywizard.cpp | 10 ------- .../qt4projectmanager/wizards/librarywizard.h | 3 --- .../qt4projectmanager/wizards/testwizard.cpp | 9 ------- .../qt4projectmanager/wizards/testwizard.h | 2 -- 21 files changed, 20 insertions(+), 118 deletions(-) diff --git a/src/plugins/coreplugin/basefilewizard.cpp b/src/plugins/coreplugin/basefilewizard.cpp index 789bdf48032..802513df07a 100644 --- a/src/plugins/coreplugin/basefilewizard.cpp +++ b/src/plugins/coreplugin/basefilewizard.cpp @@ -530,7 +530,7 @@ QStringList BaseFileWizard::runWizard(const QString &path, QWidget *parent) } if (firstExtensionPageHit) foreach (IFileWizardExtension *ex, extensions) - ex->firstExtensionPageShown(files, generatedProjectFilePath(wizard.data())); + ex->firstExtensionPageShown(files); if (accepted) break; } @@ -561,7 +561,7 @@ QStringList BaseFileWizard::runWizard(const QString &path, QWidget *parent) // Run the extensions foreach (IFileWizardExtension *ex, extensions) { bool remove; - if (!ex->process(files, generatedProjectFilePath(wizard.data()), &remove, &errorMessage)) { + if (!ex->process(files, &remove, &errorMessage)) { QMessageBox::critical(parent, tr("File Generation Failure"), errorMessage); return QStringList(); } @@ -617,12 +617,6 @@ void BaseFileWizard::applyExtensionPageShortTitle(Utils::Wizard *wizard, int pag item->setTitle(shortTitle); } -QString BaseFileWizard::generatedProjectFilePath(const QWizard *wizard) const -{ - Q_UNUSED(wizard) - return QString(); -} - bool BaseFileWizard::postGenerateFiles(const QWizard *, const GeneratedFiles &l, QString *errorMessage) { return BaseFileWizard::postGenerateOpenEditors(l, errorMessage); diff --git a/src/plugins/coreplugin/basefilewizard.h b/src/plugins/coreplugin/basefilewizard.h index aa130b073ac..133f21340fc 100644 --- a/src/plugins/coreplugin/basefilewizard.h +++ b/src/plugins/coreplugin/basefilewizard.h @@ -211,9 +211,6 @@ protected: * to create files with CustomGeneratorAttribute set. */ virtual bool writeFiles(const GeneratedFiles &files, QString *errorMessage); - // Overwrite for ProjectWizard kind and return the path to the generated project file - virtual QString generatedProjectFilePath(const QWizard *wizard) const; - /* Overwrite to perform steps to be done after files are actually created. * The default implementation opens editors with the newly generated files. */ virtual bool postGenerateFiles(const QWizard *w, const GeneratedFiles &l, QString *errorMessage); diff --git a/src/plugins/coreplugin/ifilewizardextension.h b/src/plugins/coreplugin/ifilewizardextension.h index 18172f5ba2d..9fec37326bb 100644 --- a/src/plugins/coreplugin/ifilewizardextension.h +++ b/src/plugins/coreplugin/ifilewizardextension.h @@ -58,16 +58,13 @@ public: /* Process the files using the extension parameters */ virtual bool process(const QList &files, - const QString &generatedProjectFilePath, bool *removeOpenProjectAttribute, QString *errorMessage) = 0; public slots: /* Notification about the first extension page being shown. */ - virtual void firstExtensionPageShown(const QList &files, - const QString &generatedProjectFilePath) { + virtual void firstExtensionPageShown(const QList &files) { Q_UNUSED(files) - Q_UNUSED(generatedProjectFilePath) } }; diff --git a/src/plugins/genericprojectmanager/genericprojectwizard.cpp b/src/plugins/genericprojectmanager/genericprojectwizard.cpp index 6f53486db53..b7f184e3e41 100644 --- a/src/plugins/genericprojectmanager/genericprojectwizard.cpp +++ b/src/plugins/genericprojectmanager/genericprojectwizard.cpp @@ -231,17 +231,6 @@ Core::GeneratedFiles GenericProjectWizard::generateFiles(const QWizard *w, return files; } -QString GenericProjectWizard::generatedProjectFilePath(const QWizard *w) const -{ - const GenericProjectWizardDialog *wizard = qobject_cast(w); - const QString projectPath = wizard->path(); - const QDir dir(projectPath); - const QString projectName = wizard->projectName(); - const QString creatorFileName = QFileInfo(dir, projectName + QLatin1String(".creator")).absoluteFilePath(); - - return creatorFileName; -} - bool GenericProjectWizard::postGenerateFiles(const QWizard *w, const Core::GeneratedFiles &l, QString *errorMessage) { Q_UNUSED(w); diff --git a/src/plugins/genericprojectmanager/genericprojectwizard.h b/src/plugins/genericprojectmanager/genericprojectwizard.h index 9925e92d139..833d89ee1f2 100644 --- a/src/plugins/genericprojectmanager/genericprojectwizard.h +++ b/src/plugins/genericprojectmanager/genericprojectwizard.h @@ -81,8 +81,6 @@ protected: virtual Core::GeneratedFiles generateFiles(const QWizard *w, QString *errorMessage) const; - virtual QString generatedProjectFilePath(const QWizard *w) const; - virtual bool postGenerateFiles(const QWizard *w, const Core::GeneratedFiles &l, QString *errorMessage); bool isValidDir(const QFileInfo &fileInfo) const; diff --git a/src/plugins/projectexplorer/customwizard/customwizard.cpp b/src/plugins/projectexplorer/customwizard/customwizard.cpp index cb8eab04fcc..2a84d2ed572 100644 --- a/src/plugins/projectexplorer/customwizard/customwizard.cpp +++ b/src/plugins/projectexplorer/customwizard/customwizard.cpp @@ -521,13 +521,6 @@ bool CustomProjectWizard::postGenerateOpen(const Core::GeneratedFiles &l, QStrin return BaseFileWizard::postGenerateOpenEditors(l, errorMessage); } -QString CustomProjectWizard::generatedProjectFilePath(const QWizard *) const -{ - if (CustomWizardPrivate::verbose) - qDebug("CustomProjectWizard::generatedProjectFilePath: '%s'", qPrintable(context()->projectFilePath)); - return context()->projectFilePath; -} - bool CustomProjectWizard::postGenerateFiles(const QWizard *, const Core::GeneratedFiles &l, QString *errorMessage) { if (CustomWizardPrivate::verbose) diff --git a/src/plugins/projectexplorer/customwizard/customwizard.h b/src/plugins/projectexplorer/customwizard/customwizard.h index fd864458dd8..4ebaf0f557f 100644 --- a/src/plugins/projectexplorer/customwizard/customwizard.h +++ b/src/plugins/projectexplorer/customwizard/customwizard.h @@ -164,7 +164,6 @@ signals: void projectLocationChanged(const QString &path); protected: - QString generatedProjectFilePath(const QWizard *wizard) const; virtual bool postGenerateFiles(const QWizard *w, const Core::GeneratedFiles &l, QString *errorMessage); void initProjectWizardDialog(BaseProjectWizardDialog *w, const QString &defaultPath, diff --git a/src/plugins/projectexplorer/projectfilewizardextension.cpp b/src/plugins/projectexplorer/projectfilewizardextension.cpp index 5ff438bccf6..c0d77b1387a 100644 --- a/src/plugins/projectexplorer/projectfilewizardextension.cpp +++ b/src/plugins/projectexplorer/projectfilewizardextension.cpp @@ -224,11 +224,18 @@ static int findMatchingProject(const QList &projects, return bestMatch; } -void ProjectFileWizardExtension::firstExtensionPageShown( - const QList &files, - const QString &generatedProjectFilePath) +static QString generatedProjectFilePath(const QList &files) { - initProjectChoices(generatedProjectFilePath); + foreach (const Core::GeneratedFile file, files) + if (file.attributes() & Core::GeneratedFile::OpenProjectAttribute) + return file.path(); + return QString(); +} + +void ProjectFileWizardExtension::firstExtensionPageShown( + const QList &files) +{ + initProjectChoices(generatedProjectFilePath(files)); if (debugExtension) qDebug() << Q_FUNC_INFO << files.size(); @@ -357,33 +364,32 @@ void ProjectFileWizardExtension::initProjectChoices(const QString &generatedProj bool ProjectFileWizardExtension::process( const QList &files, - const QString &generatedProjectFilePath, bool *removeOpenProjectAttribute, QString *errorMessage) { - return processProject(files, generatedProjectFilePath, - removeOpenProjectAttribute, errorMessage) && + return processProject(files, removeOpenProjectAttribute, errorMessage) && processVersionControl(files, errorMessage); } // Add files to project && version control bool ProjectFileWizardExtension::processProject( const QList &files, - const QString &generatedProjectFilePath, bool *removeOpenProjectAttribute, QString *errorMessage) { typedef QMultiMap TypeFileMap; *removeOpenProjectAttribute = false; + QString generatedProject = generatedProjectFilePath(files); + // Add files to project (Entry at 0 is 'None'). const int projectIndex = m_context->page->currentProjectIndex() - 1; if (projectIndex < 0 || projectIndex >= m_context->projects.size()) return true; ProjectNode *project = m_context->projects.at(projectIndex).node; if (m_context->wizard->kind() == Core::IWizard::ProjectWizard) { - if (!project->addSubProjects(QStringList(generatedProjectFilePath))) { + if (!project->addSubProjects(QStringList(generatedProject))) { *errorMessage = tr("Failed to add subproject '%1'\nto project '%2'.") - .arg(generatedProjectFilePath).arg(project->path()); + .arg(generatedProject).arg(project->path()); return false; } *removeOpenProjectAttribute = true; diff --git a/src/plugins/projectexplorer/projectfilewizardextension.h b/src/plugins/projectexplorer/projectfilewizardextension.h index 5c9dbe0d623..6c3d77c4bfa 100644 --- a/src/plugins/projectexplorer/projectfilewizardextension.h +++ b/src/plugins/projectexplorer/projectfilewizardextension.h @@ -51,18 +51,15 @@ public: virtual QList extensionPages(const Core::IWizard *wizard); virtual bool process(const QList &files, - const QString &generatedProjectFilePath, bool *removeOpenProjectAttribute, QString *errorMessage); public slots: - virtual void firstExtensionPageShown(const QList &files, - const QString &generatedProjectFilePath); + virtual void firstExtensionPageShown(const QList &files); private: void initProjectChoices(const QString &generatedProjectFilePath); void initializeVersionControlChoices(); bool processProject(const QList &files, - const QString &generatedProjectFilePath, bool *removeOpenProjectAttribute, QString *errorMessage); bool processVersionControl(const QList &files, QString *errorMessage); diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp index db7e72b44c6..c59d5f321f0 100644 --- a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp +++ b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.cpp @@ -75,16 +75,5 @@ Core::GeneratedFiles CustomWidgetWizard::generateFiles(const QWizard *w, return PluginGenerator::generatePlugin(p, *(cw->pluginOptions()), errorMessage); } -QString CustomWidgetWizard::generatedProjectFilePath(const QWizard *w) const -{ - const CustomWidgetWizardDialog *cw = qobject_cast(w); - const QChar slash = QLatin1Char('/'); - QString baseDir = cw->path(); - baseDir += slash; - baseDir += cw->projectName(); - baseDir += slash; - return baseDir + cw->projectName() + QLatin1String(".pro"); -} - } // namespace Internal } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.h b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.h index 07627749671..b18bad90c32 100644 --- a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.h +++ b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetwizard.h @@ -50,7 +50,6 @@ protected: virtual Core::GeneratedFiles generateFiles(const QWizard *w, QString *errorMessage) const; - virtual QString generatedProjectFilePath(const QWizard *w) const; }; } // namespace Internal diff --git a/src/plugins/qt4projectmanager/wizards/consoleappwizard.cpp b/src/plugins/qt4projectmanager/wizards/consoleappwizard.cpp index 091d49eb4b0..fa8dc638407 100644 --- a/src/plugins/qt4projectmanager/wizards/consoleappwizard.cpp +++ b/src/plugins/qt4projectmanager/wizards/consoleappwizard.cpp @@ -104,14 +104,5 @@ Core::GeneratedFiles return Core::GeneratedFiles() << source << profile; } -QString ConsoleAppWizard::generatedProjectFilePath(const QWizard *w) const -{ - const ConsoleAppWizardDialog *wizard = qobject_cast< const ConsoleAppWizardDialog *>(w); - const QtProjectParameters params = wizard->parameters(); - const QString projectPath = params.projectPath(); - - return Core::BaseFileWizard::buildFileName(projectPath, params.fileName, profileSuffix()); -} - } // namespace Internal } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/wizards/consoleappwizard.h b/src/plugins/qt4projectmanager/wizards/consoleappwizard.h index 9ad1471869d..de21cda794f 100644 --- a/src/plugins/qt4projectmanager/wizards/consoleappwizard.h +++ b/src/plugins/qt4projectmanager/wizards/consoleappwizard.h @@ -51,8 +51,6 @@ protected: virtual Core::GeneratedFiles generateFiles(const QWizard *w, QString *errorMessage) const; - - QString generatedProjectFilePath(const QWizard *w) const; }; } // namespace Internal diff --git a/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.cpp b/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.cpp index f5367d8462d..63cbf6fe07d 100644 --- a/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.cpp +++ b/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.cpp @@ -74,13 +74,5 @@ Core::GeneratedFiles return Core::GeneratedFiles() << profile; } -QString EmptyProjectWizard::generatedProjectFilePath(const QWizard *w) const -{ - const EmptyProjectWizardDialog *wizard = qobject_cast< const EmptyProjectWizardDialog *>(w); - const QtProjectParameters params = wizard->parameters(); - const QString projectPath = params.projectPath(); - return Core::BaseFileWizard::buildFileName(projectPath, params.fileName, profileSuffix()); -} - } // namespace Internal } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.h b/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.h index d951046c908..038b47a6bc1 100644 --- a/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.h +++ b/src/plugins/qt4projectmanager/wizards/emptyprojectwizard.h @@ -49,8 +49,6 @@ protected: virtual Core::GeneratedFiles generateFiles(const QWizard *w, QString *errorMessage) const; - - QString generatedProjectFilePath(const QWizard *w) const; }; } // namespace Internal diff --git a/src/plugins/qt4projectmanager/wizards/guiappwizard.cpp b/src/plugins/qt4projectmanager/wizards/guiappwizard.cpp index 1b755b7f476..24e63444983 100644 --- a/src/plugins/qt4projectmanager/wizards/guiappwizard.cpp +++ b/src/plugins/qt4projectmanager/wizards/guiappwizard.cpp @@ -237,15 +237,6 @@ Core::GeneratedFiles GuiAppWizard::generateFiles(const QWizard *w, return rc; } -QString GuiAppWizard::generatedProjectFilePath(const QWizard *w) const -{ - const GuiAppWizardDialog *dialog = qobject_cast(w); - const QtProjectParameters projectParams = dialog->projectParameters(); - const QString projectPath = projectParams.projectPath(); - - return buildFileName(projectPath, projectParams.fileName, profileSuffix()); -} - bool GuiAppWizard::parametrizeTemplate(const QString &templatePath, const QString &templateName, const GuiAppParameters ¶ms, QString *target, QString *errorMessage) diff --git a/src/plugins/qt4projectmanager/wizards/guiappwizard.h b/src/plugins/qt4projectmanager/wizards/guiappwizard.h index 4432ecd8159..ae47a4c4904 100644 --- a/src/plugins/qt4projectmanager/wizards/guiappwizard.h +++ b/src/plugins/qt4projectmanager/wizards/guiappwizard.h @@ -61,8 +61,6 @@ protected: virtual Core::GeneratedFiles generateFiles(const QWizard *w, QString *errorMessage) const; - QString generatedProjectFilePath(const QWizard *w) const; - private: static bool parametrizeTemplate(const QString &templatePath, const QString &templateName, const GuiAppParameters ¶ms, diff --git a/src/plugins/qt4projectmanager/wizards/librarywizard.cpp b/src/plugins/qt4projectmanager/wizards/librarywizard.cpp index 1c6e8775666..e86de20dcd3 100644 --- a/src/plugins/qt4projectmanager/wizards/librarywizard.cpp +++ b/src/plugins/qt4projectmanager/wizards/librarywizard.cpp @@ -137,15 +137,5 @@ Core::GeneratedFiles LibraryWizard::generateFiles(const QWizard *w, return rc; } -QString LibraryWizard::generatedProjectFilePath(const QWizard *w) const -{ - const LibraryWizardDialog *dialog = qobject_cast(w); - const QtProjectParameters projectParams = dialog->parameters(); - const QString projectPath = projectParams.projectPath(); - - return buildFileName(projectPath, projectParams.fileName, profileSuffix()); -} - - } // namespace Internal } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/wizards/librarywizard.h b/src/plugins/qt4projectmanager/wizards/librarywizard.h index 9ce0228ddb9..2b71be736c1 100644 --- a/src/plugins/qt4projectmanager/wizards/librarywizard.h +++ b/src/plugins/qt4projectmanager/wizards/librarywizard.h @@ -53,9 +53,6 @@ protected: virtual Core::GeneratedFiles generateFiles(const QWizard *w, QString *errorMessage) const; - - - QString generatedProjectFilePath(const QWizard *w) const; }; } // namespace Internal diff --git a/src/plugins/qt4projectmanager/wizards/testwizard.cpp b/src/plugins/qt4projectmanager/wizards/testwizard.cpp index 7d382832424..a493270e2ba 100644 --- a/src/plugins/qt4projectmanager/wizards/testwizard.cpp +++ b/src/plugins/qt4projectmanager/wizards/testwizard.cpp @@ -184,14 +184,5 @@ Core::GeneratedFiles TestWizard::generateFiles(const QWizard *w, QString *errorM return Core::GeneratedFiles() << source << profile; } -QString TestWizard::generatedProjectFilePath(const QWizard *w) const -{ - const TestWizardDialog *wizardDialog = qobject_cast(w); - const QtProjectParameters projectParams = wizardDialog->projectParameters(); - const QString projectPath = projectParams.projectPath(); - - return buildFileName(projectPath, projectParams.fileName, profileSuffix()); -} - } // namespace Internal } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/wizards/testwizard.h b/src/plugins/qt4projectmanager/wizards/testwizard.h index 16aa5d80ca3..90a6d5b7e2f 100644 --- a/src/plugins/qt4projectmanager/wizards/testwizard.h +++ b/src/plugins/qt4projectmanager/wizards/testwizard.h @@ -49,8 +49,6 @@ protected: virtual Core::GeneratedFiles generateFiles(const QWizard *w, QString *errorMessage) const; - - QString generatedProjectFilePath(const QWizard *w) const; signals: public slots: