#ifndef QT_PROJECT_WIZZARD_CONTENT_PATH_H #define QT_PROJECT_WIZZARD_CONTENT_PATH_H #include #include "qt/window/project_wizzard/QtProjectWizzardContent.h" class QCheckBox; class QComboBox; class QPushButton; class QtLocationPicker; class SourceGroupSettings; class QtProjectWizzardContentPath : public QtProjectWizzardContent { Q_OBJECT public: QtProjectWizzardContentPath(std::shared_ptr settings, QtProjectWizzardWindow* window); // QtSettingsWindow implementation virtual void populate(QGridLayout* layout, int& row) override; virtual bool check() override; protected: void setTitleString(const QString& title); void setHelpString(const QString& help); void setFileEndings(const std::set& fileEndings); std::shared_ptr m_settings; QtLocationPicker* m_picker; bool m_makePathRelativeToProjectFileLocation; private: QString m_titleString; QString m_helpString; std::set m_fileEndings; }; class QtProjectWizzardContentPathCDB : public QtProjectWizzardContentPath { Q_OBJECT public: QtProjectWizzardContentPathCDB(std::shared_ptr settings, QtProjectWizzardWindow* window); // QtProjectWizzardContent implementation virtual void populate(QGridLayout* layout, int& row) override; virtual void load() override; virtual void save() override; private slots: void pickedCDBPath(); }; class QtProjectWizzardContentPathSourceMaven : public QtProjectWizzardContentPath { Q_OBJECT public: QtProjectWizzardContentPathSourceMaven(std::shared_ptr settings, QtProjectWizzardWindow* window); // QtProjectWizzardContent implementation virtual void populate(QGridLayout* layout, int& row) override; virtual void load() override; virtual void save() override; virtual std::vector getFileNames() const override; private: QCheckBox* m_shouldIndexTests; }; class QtProjectWizzardContentPathDependenciesMaven : public QtProjectWizzardContentPath { Q_OBJECT public: QtProjectWizzardContentPathDependenciesMaven(std::shared_ptr settings, QtProjectWizzardWindow* window); // QtProjectWizzardContent implementation virtual void load() override; virtual void save() override; }; class QtProjectWizzardContentPathSourceGradle : public QtProjectWizzardContentPath { Q_OBJECT public: QtProjectWizzardContentPathSourceGradle(std::shared_ptr settings, QtProjectWizzardWindow* window); // QtProjectWizzardContent implementation virtual void populate(QGridLayout* layout, int& row) override; virtual void load() override; virtual void save() override; virtual std::vector getFileNames() const override; private: QCheckBox* m_shouldIndexTests; }; class QtProjectWizzardContentPathDependenciesGradle : public QtProjectWizzardContentPath { Q_OBJECT public: QtProjectWizzardContentPathDependenciesGradle(std::shared_ptr settings, QtProjectWizzardWindow* window); // QtProjectWizzardContent implementation virtual void load() override; virtual void save() override; }; #endif // QT_PROJECT_WIZZARD_CONTENT_PATH_H