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)
|
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");
|
||||||
|
@@ -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;
|
||||||
|
Reference in New Issue
Block a user