forked from qt-creator/qt-creator
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:
@@ -204,32 +204,20 @@ QList<GeneratorInfo> GeneratorInfo::generatorInfosFor(ProjectExplorer::Kit *k, N
|
||||
CMakeOpenProjectWizard::CMakeOpenProjectWizard(CMakeManager *cmakeManager, const QString &sourceDirectory, Utils::Environment env)
|
||||
: m_cmakeManager(cmakeManager),
|
||||
m_sourceDirectory(sourceDirectory),
|
||||
m_creatingCbpFiles(false),
|
||||
m_environment(env),
|
||||
m_useNinja(false),
|
||||
m_kit(0)
|
||||
{
|
||||
int startid;
|
||||
if (hasInSourceBuild()) {
|
||||
startid = InSourcePageId;
|
||||
m_buildDirectory = m_sourceDirectory;
|
||||
addPage(new InSourceBuildPage(this));
|
||||
} else {
|
||||
startid = ShadowBuildPageId;
|
||||
m_buildDirectory = m_sourceDirectory + QLatin1String("-build");
|
||||
addPage(new ShadowBuildPage(this));
|
||||
}
|
||||
|
||||
setPage(InSourcePageId, new InSourceBuildPage(this));
|
||||
setPage(ShadowBuildPageId, new ShadowBuildPage(this));
|
||||
setPage(CMakeRunPageId, new CMakeRunPage(this));
|
||||
addPage(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();
|
||||
}
|
||||
|
||||
@@ -237,7 +225,6 @@ CMakeOpenProjectWizard::CMakeOpenProjectWizard(CMakeManager *cmakeManager, CMake
|
||||
const BuildInfo &info)
|
||||
: m_cmakeManager(cmakeManager),
|
||||
m_sourceDirectory(info.sourceDirectory),
|
||||
m_creatingCbpFiles(true),
|
||||
m_environment(info.environment),
|
||||
m_useNinja(info.useNinja),
|
||||
m_kit(info.kit)
|
||||
@@ -272,20 +259,6 @@ CMakeManager *CMakeOpenProjectWizard::cmakeManager() const
|
||||
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
|
||||
{
|
||||
QFileInfo fi(m_sourceDirectory + "/CMakeCache.txt");
|
||||
|
@@ -62,12 +62,6 @@ class CMakeOpenProjectWizard : public Utils::Wizard
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
enum PageId {
|
||||
InSourcePageId,
|
||||
ShadowBuildPageId,
|
||||
CMakeRunPageId
|
||||
};
|
||||
|
||||
enum Mode {
|
||||
Nothing,
|
||||
NeedToCreate,
|
||||
@@ -105,8 +99,6 @@ public:
|
||||
/// Also used to change the build directory of one buildconfiguration or create a new buildconfiguration
|
||||
CMakeOpenProjectWizard(CMakeManager *cmakeManager, Mode mode, const BuildInfo &info);
|
||||
|
||||
|
||||
virtual int nextId() const;
|
||||
QString buildDirectory() const;
|
||||
QString sourceDirectory() const;
|
||||
void setBuildDirectory(const QString &directory);
|
||||
@@ -127,7 +119,6 @@ private:
|
||||
QString m_buildDirectory;
|
||||
QString m_sourceDirectory;
|
||||
QString m_arguments;
|
||||
bool m_creatingCbpFiles;
|
||||
Utils::Environment m_environment;
|
||||
bool m_useNinja;
|
||||
ProjectExplorer::Kit *m_kit;
|
||||
|
Reference in New Issue
Block a user