aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer/projectconfigurationaspects.h
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2019-06-13 18:25:17 +0200
committerhjk <hjk@qt.io>2019-06-14 13:34:38 +0000
commit67b33a06628ef4df68c402fc1b2907a556a8d44c (patch)
treeca767cf772310932f23e853188155272d103cb03 /src/plugins/projectexplorer/projectconfigurationaspects.h
parent77e8e1707c7223fc4905058f531e83e6788ad845 (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.h26
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