diff options
author | hjk <hjk@qt.io> | 2019-06-13 18:25:17 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2019-06-14 13:34:38 +0000 |
commit | 67b33a06628ef4df68c402fc1b2907a556a8d44c (patch) | |
tree | ca767cf772310932f23e853188155272d103cb03 /src/plugins/projectexplorer/projectconfigurationaspects.h | |
parent | 77e8e1707c7223fc4905058f531e83e6788ad845 (diff) |
ProjectExplorer: Introduce a new BaseSelectionAspect
To handle an (exclusive) choice within a set of possible options,
visualized by a set of QRadioButtons.
Use in QdbMakeDefaultAppStep.
Change-Id: Icc62a45e8c5986cd9400f90449f92154ed854a22
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/projectexplorer/projectconfigurationaspects.h')
-rw-r--r-- | src/plugins/projectexplorer/projectconfigurationaspects.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/plugins/projectexplorer/projectconfigurationaspects.h b/src/plugins/projectexplorer/projectconfigurationaspects.h index 250482b44ec..3bdf1986be7 100644 --- a/src/plugins/projectexplorer/projectconfigurationaspects.h +++ b/src/plugins/projectexplorer/projectconfigurationaspects.h @@ -39,6 +39,7 @@ namespace Internal { class BaseBoolAspectPrivate; class BaseStringAspectPrivate; class BaseIntegerAspectPrivate; +class BaseSelectionAspectPrivate; } // Internal class PROJECTEXPLORER_EXPORT BaseBoolAspect : public ProjectConfigurationAspect @@ -67,6 +68,31 @@ private: std::unique_ptr<Internal::BaseBoolAspectPrivate> d; }; +class PROJECTEXPLORER_EXPORT BaseSelectionAspect : public ProjectConfigurationAspect +{ + Q_OBJECT + +public: + BaseSelectionAspect(); + ~BaseSelectionAspect() override; + + void addToConfigurationLayout(QFormLayout *layout) override; + + int value() const; + void setValue(int val); + + int defaultValue() const; + void setDefaultValue(int defaultValue); + + void addOption(const QString &displayName, const QString &toolTip = {}); + + void fromMap(const QVariantMap &map) override; + void toMap(QVariantMap &map) const override; + +private: + std::unique_ptr<Internal::BaseSelectionAspectPrivate> d; +}; + class PROJECTEXPLORER_EXPORT BaseStringAspect : public ProjectConfigurationAspect { Q_OBJECT |