CMakeOpenProjectWizard: Simplfy constructor

We can simply call addPage and create a linear wizard instead of
manually setting up a linear structure via setPage + wizard progress

Change-Id: If4524ac235f4d1b0e6ed6d1b322b5ecac5966e2c
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
Daniel Teske
2012-10-12 16:26:35 +02:00
parent 944e96fc50
commit c2d20b7ddb
2 changed files with 3 additions and 39 deletions

View File

@@ -204,32 +204,20 @@ QList<GeneratorInfo> GeneratorInfo::generatorInfosFor(ProjectExplorer::Kit *k, N
CMakeOpenProjectWizard::CMakeOpenProjectWizard(CMakeManager *cmakeManager, const QString &sourceDirectory, Utils::Environment env) CMakeOpenProjectWizard::CMakeOpenProjectWizard(CMakeManager *cmakeManager, const QString &sourceDirectory, Utils::Environment env)
: m_cmakeManager(cmakeManager), : m_cmakeManager(cmakeManager),
m_sourceDirectory(sourceDirectory), m_sourceDirectory(sourceDirectory),
m_creatingCbpFiles(false),
m_environment(env), m_environment(env),
m_useNinja(false), m_useNinja(false),
m_kit(0) m_kit(0)
{ {
int startid;
if (hasInSourceBuild()) { if (hasInSourceBuild()) {
startid = InSourcePageId;
m_buildDirectory = m_sourceDirectory; m_buildDirectory = m_sourceDirectory;
addPage(new InSourceBuildPage(this));
} else { } else {
startid = ShadowBuildPageId;
m_buildDirectory = m_sourceDirectory + QLatin1String("-build"); m_buildDirectory = m_sourceDirectory + QLatin1String("-build");
addPage(new ShadowBuildPage(this));
} }
setPage(InSourcePageId, new InSourceBuildPage(this)); addPage(new CMakeRunPage(this));
setPage(ShadowBuildPageId, new ShadowBuildPage(this));
setPage(CMakeRunPageId, new CMakeRunPage(this));
Utils::WizardProgress *wp = wizardProgress();
Utils::WizardProgressItem *inSourceItem = wp->item(InSourcePageId);
Utils::WizardProgressItem *shadowBuildItem = wp->item(ShadowBuildPageId);
Utils::WizardProgressItem *cmakeRunItem = wp->item(CMakeRunPageId);
inSourceItem->setNextItems(QList<Utils::WizardProgressItem *>() << cmakeRunItem);
shadowBuildItem->setNextItems(QList<Utils::WizardProgressItem *>() << cmakeRunItem);
setStartId(startid);
init(); init();
} }
@@ -237,7 +225,6 @@ CMakeOpenProjectWizard::CMakeOpenProjectWizard(CMakeManager *cmakeManager, CMake
const BuildInfo &info) const BuildInfo &info)
: m_cmakeManager(cmakeManager), : m_cmakeManager(cmakeManager),
m_sourceDirectory(info.sourceDirectory), m_sourceDirectory(info.sourceDirectory),
m_creatingCbpFiles(true),
m_environment(info.environment), m_environment(info.environment),
m_useNinja(info.useNinja), m_useNinja(info.useNinja),
m_kit(info.kit) m_kit(info.kit)
@@ -272,20 +259,6 @@ CMakeManager *CMakeOpenProjectWizard::cmakeManager() const
return m_cmakeManager; return m_cmakeManager;
} }
int CMakeOpenProjectWizard::nextId() const
{
if (m_creatingCbpFiles)
return QWizard::nextId();
int cid = currentId();
if (cid == InSourcePageId) {
return CMakeRunPageId;
} else if (cid == ShadowBuildPageId) {
return CMakeRunPageId;
}
return -1;
}
bool CMakeOpenProjectWizard::hasInSourceBuild() const bool CMakeOpenProjectWizard::hasInSourceBuild() const
{ {
QFileInfo fi(m_sourceDirectory + "/CMakeCache.txt"); QFileInfo fi(m_sourceDirectory + "/CMakeCache.txt");

View File

@@ -62,12 +62,6 @@ class CMakeOpenProjectWizard : public Utils::Wizard
{ {
Q_OBJECT Q_OBJECT
public: public:
enum PageId {
InSourcePageId,
ShadowBuildPageId,
CMakeRunPageId
};
enum Mode { enum Mode {
Nothing, Nothing,
NeedToCreate, NeedToCreate,
@@ -105,8 +99,6 @@ public:
/// Also used to change the build directory of one buildconfiguration or create a new buildconfiguration /// Also used to change the build directory of one buildconfiguration or create a new buildconfiguration
CMakeOpenProjectWizard(CMakeManager *cmakeManager, Mode mode, const BuildInfo &info); CMakeOpenProjectWizard(CMakeManager *cmakeManager, Mode mode, const BuildInfo &info);
virtual int nextId() const;
QString buildDirectory() const; QString buildDirectory() const;
QString sourceDirectory() const; QString sourceDirectory() const;
void setBuildDirectory(const QString &directory); void setBuildDirectory(const QString &directory);
@@ -127,7 +119,6 @@ private:
QString m_buildDirectory; QString m_buildDirectory;
QString m_sourceDirectory; QString m_sourceDirectory;
QString m_arguments; QString m_arguments;
bool m_creatingCbpFiles;
Utils::Environment m_environment; Utils::Environment m_environment;
bool m_useNinja; bool m_useNinja;
ProjectExplorer::Kit *m_kit; ProjectExplorer::Kit *m_kit;