logic: refactored QtProjectWizzard to remove duplicate definition of contents shown for setup and summary
* also added current page count (e.g. 1/3) to project setup * moved the code for copying a source group to the settings classes so that the wizzard doesn't need to know which source groups may be there anymore.
This commit is contained in:
@@ -322,6 +322,8 @@ add_files(
|
|||||||
settings/SourceGroupSettingsCppEmpty.h
|
settings/SourceGroupSettingsCppEmpty.h
|
||||||
settings/SourceGroupSettingsCxxCdb.cpp
|
settings/SourceGroupSettingsCxxCdb.cpp
|
||||||
settings/SourceGroupSettingsCxxCdb.h
|
settings/SourceGroupSettingsCxxCdb.h
|
||||||
|
settings/SourceGroupSettingsCxxCdbVs.cpp
|
||||||
|
settings/SourceGroupSettingsCxxCdbVs.h
|
||||||
settings/SourceGroupSettingsCxxCodeblocks.cpp
|
settings/SourceGroupSettingsCxxCodeblocks.cpp
|
||||||
settings/SourceGroupSettingsCxxCodeblocks.h
|
settings/SourceGroupSettingsCxxCodeblocks.h
|
||||||
settings/SourceGroupSettingsCxxSonargraph.cpp
|
settings/SourceGroupSettingsCxxSonargraph.cpp
|
||||||
|
|||||||
@@ -21,6 +21,8 @@ public:
|
|||||||
SourceGroupSettings(const std::string& id, SourceGroupType type, const ProjectSettings* projectSettings);
|
SourceGroupSettings(const std::string& id, SourceGroupType type, const ProjectSettings* projectSettings);
|
||||||
virtual ~SourceGroupSettings() = default;
|
virtual ~SourceGroupSettings() = default;
|
||||||
|
|
||||||
|
virtual std::shared_ptr<SourceGroupSettings> createCopy() const = 0;
|
||||||
|
|
||||||
virtual void load(std::shared_ptr<const ConfigManager> config);
|
virtual void load(std::shared_ptr<const ConfigManager> config);
|
||||||
virtual void save(std::shared_ptr<ConfigManager> config);
|
virtual void save(std::shared_ptr<ConfigManager> config);
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,11 @@ SourceGroupSettingsCEmpty::SourceGroupSettingsCEmpty(const std::string& id, cons
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsCEmpty::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsCEmpty>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsCEmpty::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsCEmpty::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettingsCxx::load(config);
|
SourceGroupSettingsCxx::load(config);
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ class SourceGroupSettingsCEmpty
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsCEmpty(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsCEmpty(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,11 @@ SourceGroupSettingsCppEmpty::SourceGroupSettingsCppEmpty(const std::string& id,
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsCppEmpty::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsCppEmpty>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsCppEmpty::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsCppEmpty::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettingsCxx::load(config);
|
SourceGroupSettingsCxx::load(config);
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ class SourceGroupSettingsCppEmpty
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsCppEmpty(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsCppEmpty(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,11 @@ SourceGroupSettingsCxxCdb::SourceGroupSettingsCxxCdb(const std::string& id, cons
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsCxxCdb::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsCxxCdb>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsCxxCdb::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsCxxCdb::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettingsCxx::load(config);
|
SourceGroupSettingsCxx::load(config);
|
||||||
|
|||||||
@@ -14,6 +14,8 @@ class SourceGroupSettingsCxxCdb
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsCxxCdb(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsCxxCdb(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,11 @@
|
|||||||
|
#include "settings/SourceGroupSettingsCxxCdbVs.h"
|
||||||
|
|
||||||
|
SourceGroupSettingsCxxCdbVs::SourceGroupSettingsCxxCdbVs(const std::string& id, const ProjectSettings* projectSettings)
|
||||||
|
: SourceGroupSettingsCxxCdb(id, projectSettings)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsCxxCdbVs::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsCxxCdbVs>(*this);
|
||||||
|
}
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
#ifndef SOURCE_GROUP_SETTINGS_CXX_CDB_VS_H
|
||||||
|
#define SOURCE_GROUP_SETTINGS_CXX_CDB_VS_H
|
||||||
|
|
||||||
|
#include "settings/SourceGroupSettingsCxxCdb.h"
|
||||||
|
#include "utility/file/FilePath.h"
|
||||||
|
|
||||||
|
class SourceGroupSettingsCxxCdbVs
|
||||||
|
: public SourceGroupSettingsCxxCdb
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SourceGroupSettingsCxxCdbVs(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // SOURCE_GROUP_SETTINGS_CXX_CDB_VS_H
|
||||||
@@ -8,6 +8,11 @@ SourceGroupSettingsCxxCodeblocks::SourceGroupSettingsCxxCodeblocks(const std::st
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsCxxCodeblocks::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsCxxCodeblocks>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsCxxCodeblocks::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsCxxCodeblocks::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettingsCxx::load(config);
|
SourceGroupSettingsCxx::load(config);
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ class SourceGroupSettingsCxxCodeblocks
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsCxxCodeblocks(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsCxxCodeblocks(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,11 @@ SourceGroupSettingsCxxSonargraph::SourceGroupSettingsCxxSonargraph(const std::st
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsCxxSonargraph::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsCxxSonargraph>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsCxxSonargraph::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsCxxSonargraph::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettingsCxx::load(config);
|
SourceGroupSettingsCxx::load(config);
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ class SourceGroupSettingsCxxSonargraph
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsCxxSonargraph(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsCxxSonargraph(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,11 @@ SourceGroupSettingsJavaEmpty::SourceGroupSettingsJavaEmpty(const std::string& id
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsJavaEmpty::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsJavaEmpty>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsJavaEmpty::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsJavaEmpty::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettings::load(config);
|
SourceGroupSettings::load(config);
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ class SourceGroupSettingsJavaEmpty
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsJavaEmpty(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsJavaEmpty(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,11 @@ SourceGroupSettingsJavaGradle::SourceGroupSettingsJavaGradle(const std::string&
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsJavaGradle::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsJavaGradle>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsJavaGradle::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsJavaGradle::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettingsJava::load(config);
|
SourceGroupSettingsJava::load(config);
|
||||||
|
|||||||
@@ -10,6 +10,8 @@ class SourceGroupSettingsJavaGradle
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsJavaGradle(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsJavaGradle(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,11 @@ SourceGroupSettingsJavaMaven::SourceGroupSettingsJavaMaven(const std::string& id
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsJavaMaven::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsJavaMaven>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsJavaMaven::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsJavaMaven::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettingsJava::load(config);
|
SourceGroupSettingsJava::load(config);
|
||||||
|
|||||||
@@ -10,6 +10,8 @@ class SourceGroupSettingsJavaMaven
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsJavaMaven(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsJavaMaven(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,11 @@ SourceGroupSettingsJavaSonargraph::SourceGroupSettingsJavaSonargraph(const std::
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> SourceGroupSettingsJavaSonargraph::createCopy() const
|
||||||
|
{
|
||||||
|
return std::make_shared<SourceGroupSettingsJavaSonargraph>(*this);
|
||||||
|
}
|
||||||
|
|
||||||
void SourceGroupSettingsJavaSonargraph::load(std::shared_ptr<const ConfigManager> config)
|
void SourceGroupSettingsJavaSonargraph::load(std::shared_ptr<const ConfigManager> config)
|
||||||
{
|
{
|
||||||
SourceGroupSettings::load(config);
|
SourceGroupSettings::load(config);
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ class SourceGroupSettingsJavaSonargraph
|
|||||||
public:
|
public:
|
||||||
SourceGroupSettingsJavaSonargraph(const std::string& id, const ProjectSettings* projectSettings);
|
SourceGroupSettingsJavaSonargraph(const std::string& id, const ProjectSettings* projectSettings);
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override;
|
||||||
|
|
||||||
void load(std::shared_ptr<const ConfigManager> config) override;
|
void load(std::shared_ptr<const ConfigManager> config) override;
|
||||||
void save(std::shared_ptr<ConfigManager> config) override;
|
void save(std::shared_ptr<ConfigManager> config) override;
|
||||||
|
|
||||||
|
|||||||
@@ -293,10 +293,10 @@ namespace Sonargraph
|
|||||||
|
|
||||||
std::vector<std::shared_ptr<IndexerCommand>> XsdCmakeJsonModule::getIndexerCommandsForRootPath(
|
std::vector<std::shared_ptr<IndexerCommand>> XsdCmakeJsonModule::getIndexerCommandsForRootPath(
|
||||||
std::shared_ptr<XsdRootPathWithFiles> rootPath,
|
std::shared_ptr<XsdRootPathWithFiles> rootPath,
|
||||||
const std::set<FilePath> indexedHeaderPaths,
|
const std::set<FilePath>& indexedHeaderPaths,
|
||||||
const std::string& languageStandard,
|
const std::string& languageStandard,
|
||||||
const std::vector<FilePath> systemHeaderSearchPaths,
|
const std::vector<FilePath>& systemHeaderSearchPaths,
|
||||||
const std::vector<FilePath> frameworkSearchPaths) const
|
const std::vector<FilePath>& frameworkSearchPaths) const
|
||||||
{
|
{
|
||||||
std::vector<std::shared_ptr<IndexerCommand>> indexerCommands;
|
std::vector<std::shared_ptr<IndexerCommand>> indexerCommands;
|
||||||
if (rootPath)
|
if (rootPath)
|
||||||
|
|||||||
@@ -33,10 +33,10 @@ namespace Sonargraph
|
|||||||
|
|
||||||
std::vector<std::shared_ptr<IndexerCommand>> getIndexerCommandsForRootPath(
|
std::vector<std::shared_ptr<IndexerCommand>> getIndexerCommandsForRootPath(
|
||||||
std::shared_ptr<XsdRootPathWithFiles> rootPath,
|
std::shared_ptr<XsdRootPathWithFiles> rootPath,
|
||||||
const std::set<FilePath> indexedHeaderPaths,
|
const std::set<FilePath>& indexedHeaderPaths,
|
||||||
const std::string& languageStandard,
|
const std::string& languageStandard,
|
||||||
const std::vector<FilePath> systemHeaderSearchPaths,
|
const std::vector<FilePath>& systemHeaderSearchPaths,
|
||||||
const std::vector<FilePath> frameworkSearchPaths) const;
|
const std::vector<FilePath>& frameworkSearchPaths) const;
|
||||||
|
|
||||||
std::vector<std::shared_ptr<XsdRootPathWithFiles>> m_rootPathWithFiles;
|
std::vector<std::shared_ptr<XsdRootPathWithFiles>> m_rootPathWithFiles;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -219,6 +219,8 @@ add_files(
|
|||||||
qt/window/project_wizzard/QtProjectWizzardContentVS.h
|
qt/window/project_wizzard/QtProjectWizzardContentVS.h
|
||||||
qt/window/project_wizzard/QtProjectWizzardWindow.cpp
|
qt/window/project_wizzard/QtProjectWizzardWindow.cpp
|
||||||
qt/window/project_wizzard/QtProjectWizzardWindow.h
|
qt/window/project_wizzard/QtProjectWizzardWindow.h
|
||||||
|
qt/window/project_wizzard/QtSourceGroupWizzard.h
|
||||||
|
qt/window/project_wizzard/QtSourceGroupWizzardPage.h
|
||||||
|
|
||||||
qt/window/QtAbout.cpp
|
qt/window/QtAbout.cpp
|
||||||
qt/window/QtAbout.h
|
qt/window/QtAbout.h
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -6,8 +6,8 @@
|
|||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
|
||||||
#include "qt/window/project_wizzard/QtProjectWizzardWindow.h"
|
#include "qt/window/project_wizzard/QtProjectWizzardWindow.h"
|
||||||
|
#include "qt/window/project_wizzard/QtSourceGroupWizzard.h"
|
||||||
#include "qt/window/QtWindow.h"
|
#include "qt/window/QtWindow.h"
|
||||||
|
|
||||||
#include "settings/ApplicationSettings.h"
|
#include "settings/ApplicationSettings.h"
|
||||||
#include "settings/ProjectSettings.h"
|
#include "settings/ProjectSettings.h"
|
||||||
|
|
||||||
@@ -41,6 +41,9 @@ protected:
|
|||||||
virtual void handlePrevious() override;
|
virtual void handlePrevious() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
template <typename SettingsType>
|
||||||
|
void executeSoureGroupSetup(std::shared_ptr<SettingsType> settings);
|
||||||
|
|
||||||
QtProjectWizzardWindow* createWindowWithContent(
|
QtProjectWizzardWindow* createWindowWithContent(
|
||||||
std::function<QtProjectWizzardContent*(QtProjectWizzardWindow*)> func);
|
std::function<QtProjectWizzardContent*(QtProjectWizzardWindow*)> func);
|
||||||
|
|
||||||
@@ -54,7 +57,7 @@ private:
|
|||||||
|
|
||||||
std::shared_ptr<ProjectSettings> m_projectSettings;
|
std::shared_ptr<ProjectSettings> m_projectSettings;
|
||||||
std::vector<std::shared_ptr<SourceGroupSettings>> m_allSourceGroupSettings;
|
std::vector<std::shared_ptr<SourceGroupSettings>> m_allSourceGroupSettings;
|
||||||
std::shared_ptr<SourceGroupSettings> m_newSourceGroupSettings;
|
std::shared_ptr<QtSourceGroupWizzardBase> m_sourceGroupWizzard;
|
||||||
ApplicationSettings m_appSettings;
|
ApplicationSettings m_appSettings;
|
||||||
|
|
||||||
bool m_editing;
|
bool m_editing;
|
||||||
@@ -83,28 +86,7 @@ private slots:
|
|||||||
void newSourceGroup();
|
void newSourceGroup();
|
||||||
void selectedProjectType(SourceGroupType sourceGroupType);
|
void selectedProjectType(SourceGroupType sourceGroupType);
|
||||||
|
|
||||||
void emptySourceGroup();
|
void createSourceGroup(std::shared_ptr<SourceGroupSettings> settings);
|
||||||
void emptySourceGroupCDBVS();
|
|
||||||
void emptySourceGroupCDB();
|
|
||||||
void emptySourceGroupCxxCodeblocks();
|
|
||||||
void emptySourceGroupCxxSonargraph();
|
|
||||||
void emptySourceGroupJavaSonargraph();
|
|
||||||
|
|
||||||
void sourcePaths();
|
|
||||||
void headerSearchPaths();
|
|
||||||
|
|
||||||
void headerSearchPathsDone();
|
|
||||||
void frameworkSearchPaths();
|
|
||||||
|
|
||||||
void sourcePathsJava();
|
|
||||||
void dependenciesJava();
|
|
||||||
void sourcePathsJavaMaven();
|
|
||||||
void sourcePathsJavaGradle();
|
|
||||||
|
|
||||||
void advancedSettingsCxx();
|
|
||||||
void advancedSettingsJava();
|
|
||||||
|
|
||||||
void createSourceGroup();
|
|
||||||
void createProject();
|
void createProject();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -17,22 +17,10 @@ QtProjectWizzardContentCStandard::QtProjectWizzardContentCStandard(
|
|||||||
|
|
||||||
void QtProjectWizzardContentCStandard::populate(QGridLayout* layout, int& row)
|
void QtProjectWizzardContentCStandard::populate(QGridLayout* layout, int& row)
|
||||||
{
|
{
|
||||||
if (!isInForm())
|
|
||||||
{
|
|
||||||
layout->setRowMinimumHeight(row, 15);
|
|
||||||
row++;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_standard = new QComboBox();
|
m_standard = new QComboBox();
|
||||||
layout->addWidget(createFormLabel("C Standard"), row, QtProjectWizzardWindow::FRONT_COL, Qt::AlignRight);
|
layout->addWidget(createFormLabel("C Standard"), row, QtProjectWizzardWindow::FRONT_COL, Qt::AlignRight);
|
||||||
layout->addWidget(m_standard, row, QtProjectWizzardWindow::BACK_COL, Qt::AlignLeft);
|
layout->addWidget(m_standard, row, QtProjectWizzardWindow::BACK_COL, Qt::AlignLeft);
|
||||||
row++;
|
row++;
|
||||||
|
|
||||||
if (!isInForm())
|
|
||||||
{
|
|
||||||
layout->setRowMinimumHeight(row, 15);
|
|
||||||
layout->setRowStretch(row, 1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void QtProjectWizzardContentCStandard::load()
|
void QtProjectWizzardContentCStandard::load()
|
||||||
|
|||||||
@@ -17,22 +17,10 @@ QtProjectWizzardContentCppStandard::QtProjectWizzardContentCppStandard(
|
|||||||
|
|
||||||
void QtProjectWizzardContentCppStandard::populate(QGridLayout* layout, int& row)
|
void QtProjectWizzardContentCppStandard::populate(QGridLayout* layout, int& row)
|
||||||
{
|
{
|
||||||
if (!isInForm())
|
|
||||||
{
|
|
||||||
layout->setRowMinimumHeight(row, 15);
|
|
||||||
row++;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_standard = new QComboBox();
|
m_standard = new QComboBox();
|
||||||
layout->addWidget(createFormLabel("C++ Standard"), row, QtProjectWizzardWindow::FRONT_COL, Qt::AlignRight);
|
layout->addWidget(createFormLabel("C++ Standard"), row, QtProjectWizzardWindow::FRONT_COL, Qt::AlignRight);
|
||||||
layout->addWidget(m_standard, row, QtProjectWizzardWindow::BACK_COL, Qt::AlignLeft);
|
layout->addWidget(m_standard, row, QtProjectWizzardWindow::BACK_COL, Qt::AlignLeft);
|
||||||
row++;
|
row++;
|
||||||
|
|
||||||
if (!isInForm())
|
|
||||||
{
|
|
||||||
layout->setRowMinimumHeight(row, 15);
|
|
||||||
layout->setRowStretch(row, 1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void QtProjectWizzardContentCppStandard::load()
|
void QtProjectWizzardContentCppStandard::load()
|
||||||
|
|||||||
@@ -28,6 +28,19 @@ void QtProjectWizzardContentGroup::setIsForm(bool isForm)
|
|||||||
m_isForm = isForm;
|
m_isForm = isForm;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool QtProjectWizzardContentGroup::hasContents() const
|
||||||
|
{
|
||||||
|
for (QtProjectWizzardContent* content : m_contents)
|
||||||
|
{
|
||||||
|
if (content)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
void QtProjectWizzardContentGroup::populate(QGridLayout* layout, int& row)
|
void QtProjectWizzardContentGroup::populate(QGridLayout* layout, int& row)
|
||||||
{
|
{
|
||||||
if (m_isForm)
|
if (m_isForm)
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ public:
|
|||||||
void addSpace();
|
void addSpace();
|
||||||
|
|
||||||
void setIsForm(bool isForm);
|
void setIsForm(bool isForm);
|
||||||
|
bool hasContents() const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// QtProjectWizzardContent implementation
|
// QtProjectWizzardContent implementation
|
||||||
|
|||||||
@@ -17,22 +17,10 @@ QtProjectWizzardContentJavaStandard::QtProjectWizzardContentJavaStandard(
|
|||||||
|
|
||||||
void QtProjectWizzardContentJavaStandard::populate(QGridLayout* layout, int& row)
|
void QtProjectWizzardContentJavaStandard::populate(QGridLayout* layout, int& row)
|
||||||
{
|
{
|
||||||
if (!isInForm())
|
|
||||||
{
|
|
||||||
layout->setRowMinimumHeight(row, 15);
|
|
||||||
row++;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_standard = new QComboBox();
|
m_standard = new QComboBox();
|
||||||
layout->addWidget(createFormLabel("Java Standard"), row, QtProjectWizzardWindow::FRONT_COL, Qt::AlignRight);
|
layout->addWidget(createFormLabel("Java Standard"), row, QtProjectWizzardWindow::FRONT_COL, Qt::AlignRight);
|
||||||
layout->addWidget(m_standard, row, QtProjectWizzardWindow::BACK_COL, Qt::AlignLeft);
|
layout->addWidget(m_standard, row, QtProjectWizzardWindow::BACK_COL, Qt::AlignLeft);
|
||||||
row++;
|
row++;
|
||||||
|
|
||||||
if (!isInForm())
|
|
||||||
{
|
|
||||||
layout->setRowMinimumHeight(row, 15);
|
|
||||||
layout->setRowStretch(row, 1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void QtProjectWizzardContentJavaStandard::load()
|
void QtProjectWizzardContentJavaStandard::load()
|
||||||
|
|||||||
@@ -386,7 +386,7 @@ std::vector<FilePath> QtProjectWizzardContentIndexedHeaderPaths::getIndexedPaths
|
|||||||
}
|
}
|
||||||
|
|
||||||
QtProjectWizzardContentIndexedHeaderPaths::QtProjectWizzardContentIndexedHeaderPaths(
|
QtProjectWizzardContentIndexedHeaderPaths::QtProjectWizzardContentIndexedHeaderPaths(
|
||||||
const std::string& projectKindName, std::shared_ptr<SourceGroupSettings> settings, QtProjectWizzardWindow* window
|
std::shared_ptr<SourceGroupSettings> settings, QtProjectWizzardWindow* window, std::string projectKindName
|
||||||
)
|
)
|
||||||
: QtProjectWizzardContentPaths(settings, window, QtPathListBox::SELECTION_POLICY_FILES_AND_DIRECTORIES)
|
: QtProjectWizzardContentPaths(settings, window, QtPathListBox::SELECTION_POLICY_FILES_AND_DIRECTORIES)
|
||||||
, m_projectKindName(projectKindName)
|
, m_projectKindName(projectKindName)
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ public:
|
|||||||
static std::vector<FilePath> getIndexedPathsDerivedFromCDB(std::shared_ptr<const SourceGroupSettingsCxxCdb> settings);
|
static std::vector<FilePath> getIndexedPathsDerivedFromCDB(std::shared_ptr<const SourceGroupSettingsCxxCdb> settings);
|
||||||
|
|
||||||
QtProjectWizzardContentIndexedHeaderPaths(
|
QtProjectWizzardContentIndexedHeaderPaths(
|
||||||
const std::string& projectKindName, std::shared_ptr<SourceGroupSettings> settings, QtProjectWizzardWindow* window);
|
std::shared_ptr<SourceGroupSettings> settings, QtProjectWizzardWindow* window, std::string projectKindName);
|
||||||
|
|
||||||
virtual void populate(QGridLayout* layout, int& row) override;
|
virtual void populate(QGridLayout* layout, int& row) override;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,154 @@
|
|||||||
|
#ifndef QT_SOURCE_GROUP_WIZZARD_H
|
||||||
|
#define QT_SOURCE_GROUP_WIZZARD_H
|
||||||
|
|
||||||
|
#include <functional>
|
||||||
|
#include <memory>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
#include "qt/window/project_wizzard/QtProjectWizzardContentGroup.h"
|
||||||
|
#include "qt/window/project_wizzard/QtProjectWizzardWindow.h"
|
||||||
|
#include "qt/window/project_wizzard/QtSourceGroupWizzardPage.h"
|
||||||
|
#include "utility/logging/logging.h"
|
||||||
|
|
||||||
|
class SourceGroupSettings;
|
||||||
|
|
||||||
|
class QtSourceGroupWizzardBase
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual ~QtSourceGroupWizzardBase() = default;
|
||||||
|
virtual void execute(QtWindowStack& windowStack) = 0;
|
||||||
|
virtual bool canProcessSettings(std::shared_ptr<const SourceGroupSettings> settings) = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
class QtSourceGroupWizzard: public QtSourceGroupWizzardBase
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
QtSourceGroupWizzard(
|
||||||
|
std::shared_ptr<SettingsType> settings,
|
||||||
|
std::function<void()> onCancelClicked,
|
||||||
|
std::function<void(std::shared_ptr<SourceGroupSettings>)> onFinishedWizzard
|
||||||
|
);
|
||||||
|
|
||||||
|
void addPage(const QtSourceGroupWizzardPage<SettingsType>& page);
|
||||||
|
void execute(QtWindowStack& windowStack) override;
|
||||||
|
bool canProcessSettings(std::shared_ptr<const SourceGroupSettings> settings) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
void createWindowForPage(const size_t pageId, QtWindowStack& windowStack);
|
||||||
|
int mapToPageIdWithContentForContext(size_t pageId, WizzardContentContextType contextType) const;
|
||||||
|
|
||||||
|
std::shared_ptr<SettingsType> m_settings;
|
||||||
|
std::function<void()> m_onCancelClicked;
|
||||||
|
std::function<void(std::shared_ptr<SourceGroupSettings>)> m_onFinishedWizzard;
|
||||||
|
std::vector<QtSourceGroupWizzardPage<SettingsType>> m_pages;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
QtSourceGroupWizzard<SettingsType>::QtSourceGroupWizzard(
|
||||||
|
std::shared_ptr<SettingsType> settings,
|
||||||
|
std::function<void()> onCancelClicked,
|
||||||
|
std::function<void(std::shared_ptr<SourceGroupSettings>)> onFinishedWizzard
|
||||||
|
)
|
||||||
|
: m_settings(settings)
|
||||||
|
, m_onCancelClicked(onCancelClicked)
|
||||||
|
, m_onFinishedWizzard(onFinishedWizzard)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
void QtSourceGroupWizzard<SettingsType>::addPage(const QtSourceGroupWizzardPage<SettingsType>& page)
|
||||||
|
{
|
||||||
|
m_pages.push_back(page);
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
void QtSourceGroupWizzard<SettingsType>::execute(QtWindowStack& windowStack)
|
||||||
|
{
|
||||||
|
if (!m_pages.empty())
|
||||||
|
{
|
||||||
|
createWindowForPage(mapToPageIdWithContentForContext(0, WIZZARD_CONTENT_CONTEXT_SETUP), windowStack);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
bool QtSourceGroupWizzard<SettingsType>::canProcessSettings(std::shared_ptr<const SourceGroupSettings> settings)
|
||||||
|
{
|
||||||
|
if (std::dynamic_pointer_cast<const SettingsType>(settings))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
void QtSourceGroupWizzard<SettingsType>::createWindowForPage(const size_t pageId, QtWindowStack& windowStack)
|
||||||
|
{
|
||||||
|
if (pageId >= m_pages.size())
|
||||||
|
{
|
||||||
|
LOG_ERROR("Project Setup does not contain page " + std::to_string(pageId));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const QtSourceGroupWizzardPage<SettingsType>& page = m_pages.at(pageId);
|
||||||
|
const int nextPageId = mapToPageIdWithContentForContext(pageId + 1, WIZZARD_CONTENT_CONTEXT_SETUP);
|
||||||
|
|
||||||
|
QtProjectWizzardWindow* window = new QtProjectWizzardWindow(nullptr);
|
||||||
|
|
||||||
|
window->connect(window, &QtProjectWizzardWindow::previous, &windowStack, &QtWindowStack::popWindow);
|
||||||
|
window->connect(window, &QtProjectWizzardWindow::canceled, m_onCancelClicked);
|
||||||
|
|
||||||
|
if (nextPageId > 0)
|
||||||
|
{
|
||||||
|
window->connect(
|
||||||
|
window, &QtProjectWizzardWindow::next,
|
||||||
|
[this, nextPageId, &windowStack]() { this->createWindowForPage(nextPageId, windowStack); }
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
window->connect(window, &QtProjectWizzardWindow::next, [&]() { m_onFinishedWizzard(m_settings); });
|
||||||
|
}
|
||||||
|
|
||||||
|
QtProjectWizzardContentGroup* contentGroup = page.createContentGroup(WIZZARD_CONTENT_CONTEXT_SETUP, m_settings, window);
|
||||||
|
|
||||||
|
window->setPreferredSize(QSize(page.getPreferredWidth(), page.getPreferredHeight()));
|
||||||
|
window->setContent(contentGroup);
|
||||||
|
window->setScrollAble(window->content()->isScrollAble());
|
||||||
|
window->setup();
|
||||||
|
|
||||||
|
size_t currentPage = 0;
|
||||||
|
size_t totalPages = 0;
|
||||||
|
for (size_t i = 0; i < m_pages.size(); i++)
|
||||||
|
{
|
||||||
|
if (m_pages[i].hasContentForContext(WIZZARD_CONTENT_CONTEXT_SETUP))
|
||||||
|
{
|
||||||
|
if (i <= pageId)
|
||||||
|
{
|
||||||
|
currentPage++;
|
||||||
|
}
|
||||||
|
totalPages++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
window->updateSubTitle(QString::fromStdString(page.getTitle() + " - " + std::to_string(currentPage) + "/" + std::to_string(totalPages)));
|
||||||
|
|
||||||
|
windowStack.pushWindow(window);
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
int QtSourceGroupWizzard<SettingsType>::mapToPageIdWithContentForContext(size_t pageId, WizzardContentContextType contextType) const
|
||||||
|
{
|
||||||
|
while (pageId < m_pages.size())
|
||||||
|
{
|
||||||
|
const QtSourceGroupWizzardPage<SettingsType>& page = m_pages.at(pageId);
|
||||||
|
if (page.hasContentForContext(contextType))
|
||||||
|
{
|
||||||
|
return pageId;
|
||||||
|
}
|
||||||
|
pageId++;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // QT_SOURCE_GROUP_WIZZARD_H
|
||||||
@@ -0,0 +1,163 @@
|
|||||||
|
#ifndef QT_SOURCE_GROUP_WIZZARD_PAGE_H
|
||||||
|
#define QT_SOURCE_GROUP_WIZZARD_PAGE_H
|
||||||
|
|
||||||
|
#include <functional>
|
||||||
|
#include <memory>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
class QtProjectWizzardWindow;
|
||||||
|
|
||||||
|
enum WizzardContentContextType
|
||||||
|
{
|
||||||
|
WIZZARD_CONTENT_CONTEXT_SETUP = 1,
|
||||||
|
WIZZARD_CONTENT_CONTEXT_SUMMARY = 2,
|
||||||
|
WIZZARD_CONTENT_CONTEXT_ALL = 3
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
class QtSourceGroupWizzardPage
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
typedef std::function<QtProjectWizzardContent* (std::shared_ptr<SettingsType> settings, QtProjectWizzardWindow* window)> ContentCreator;
|
||||||
|
|
||||||
|
QtSourceGroupWizzardPage(const std::string& title, int preferredWidth = 750, int preferredHeight = 600);
|
||||||
|
|
||||||
|
void addContentCreator(
|
||||||
|
WizzardContentContextType contextType,
|
||||||
|
ContentCreator contentCreator
|
||||||
|
);
|
||||||
|
|
||||||
|
template <typename ContentType>
|
||||||
|
void addContentCreatorSimple(WizzardContentContextType contextType);
|
||||||
|
|
||||||
|
template <typename ContentType>
|
||||||
|
void addContentCreatorWithSettings(WizzardContentContextType contextType);
|
||||||
|
|
||||||
|
template <typename ContentType, typename ... ParamTypes>
|
||||||
|
void addContentCreatorWithSettings(WizzardContentContextType contextType, ParamTypes ... params);
|
||||||
|
|
||||||
|
bool hasContentForContext(WizzardContentContextType contextType) const;
|
||||||
|
|
||||||
|
std::string getTitle() const;
|
||||||
|
int getPreferredWidth() const;
|
||||||
|
int getPreferredHeight() const;
|
||||||
|
QtProjectWizzardContentGroup* createContentGroup(WizzardContentContextType contextType, std::shared_ptr<SettingsType> settings, QtProjectWizzardWindow* window) const;
|
||||||
|
|
||||||
|
private:
|
||||||
|
const std::string m_title;
|
||||||
|
const int m_preferredWidth;
|
||||||
|
const int m_preferredHeight;
|
||||||
|
std::vector<std::pair<WizzardContentContextType, ContentCreator>> m_contentCreators;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
QtSourceGroupWizzardPage<SettingsType>::QtSourceGroupWizzardPage(const std::string& title, int preferredWidth, int preferredHeight)
|
||||||
|
: m_title(title)
|
||||||
|
, m_preferredWidth(preferredWidth)
|
||||||
|
, m_preferredHeight(preferredHeight)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
void QtSourceGroupWizzardPage<SettingsType>::addContentCreator(
|
||||||
|
WizzardContentContextType contextType,
|
||||||
|
ContentCreator contentCreator
|
||||||
|
)
|
||||||
|
{
|
||||||
|
m_contentCreators.push_back(std::make_pair(contextType, contentCreator));
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
template <typename ContentType>
|
||||||
|
void QtSourceGroupWizzardPage<SettingsType>::addContentCreatorSimple(WizzardContentContextType contextType)
|
||||||
|
{
|
||||||
|
addContentCreator(
|
||||||
|
contextType,
|
||||||
|
[](std::shared_ptr<SettingsType> settings, QtProjectWizzardWindow* window)
|
||||||
|
{
|
||||||
|
return new ContentType(window);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
template <typename ContentType>
|
||||||
|
void QtSourceGroupWizzardPage<SettingsType>::addContentCreatorWithSettings(WizzardContentContextType contextType)
|
||||||
|
{
|
||||||
|
addContentCreator(
|
||||||
|
contextType,
|
||||||
|
[](std::shared_ptr<SettingsType> settings, QtProjectWizzardWindow* window)
|
||||||
|
{
|
||||||
|
return new ContentType(settings, window);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
template <typename ContentType, typename ... ParamTypes>
|
||||||
|
void QtSourceGroupWizzardPage<SettingsType>::addContentCreatorWithSettings(WizzardContentContextType contextType, ParamTypes ... params)
|
||||||
|
{
|
||||||
|
addContentCreator(
|
||||||
|
contextType,
|
||||||
|
[=](std::shared_ptr<SettingsType> settings, QtProjectWizzardWindow* window)
|
||||||
|
{
|
||||||
|
return new ContentType(settings, window, params...);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
std::string QtSourceGroupWizzardPage<SettingsType>::getTitle() const
|
||||||
|
{
|
||||||
|
return m_title;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
int QtSourceGroupWizzardPage<SettingsType>::getPreferredWidth() const
|
||||||
|
{
|
||||||
|
return m_preferredWidth;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
int QtSourceGroupWizzardPage<SettingsType>::getPreferredHeight() const
|
||||||
|
{
|
||||||
|
return m_preferredHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
bool QtSourceGroupWizzardPage<SettingsType>::hasContentForContext(WizzardContentContextType contextType) const
|
||||||
|
{
|
||||||
|
for (const std::pair<WizzardContentContextType, ContentCreator>& contentCreator : m_contentCreators)
|
||||||
|
{
|
||||||
|
if (contentCreator.first & contextType)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename SettingsType>
|
||||||
|
QtProjectWizzardContentGroup* QtSourceGroupWizzardPage<SettingsType>::createContentGroup(WizzardContentContextType contextType, std::shared_ptr<SettingsType> settings, QtProjectWizzardWindow* window) const
|
||||||
|
{
|
||||||
|
QtProjectWizzardContentGroup* contentGroup = new QtProjectWizzardContentGroup(window);
|
||||||
|
|
||||||
|
bool firstContentAdded = false;
|
||||||
|
for (const std::pair<WizzardContentContextType, ContentCreator>& contentCreator : m_contentCreators)
|
||||||
|
{
|
||||||
|
if (contentCreator.first & contextType)
|
||||||
|
{
|
||||||
|
if (firstContentAdded)
|
||||||
|
{
|
||||||
|
contentGroup->addSpace();
|
||||||
|
}
|
||||||
|
contentGroup->addContent(contentCreator.second(settings, window));
|
||||||
|
firstContentAdded = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return contentGroup;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#endif // QT_SOURCE_GROUP_WIZZARD_PAGE_H
|
||||||
@@ -425,6 +425,11 @@ private:
|
|||||||
: SourceGroupSettings("TEST_ID", SOURCE_GROUP_UNKNOWN, projectSettings)
|
: SourceGroupSettings("TEST_ID", SOURCE_GROUP_UNKNOWN, projectSettings)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<SourceGroupSettings> createCopy() const override
|
||||||
|
{
|
||||||
|
return std::shared_ptr<SourceGroupSettings>();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class SourceGroupTest : public SourceGroup
|
class SourceGroupTest : public SourceGroup
|
||||||
|
|||||||
Reference in New Issue
Block a user