aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer/kitmanager.h
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2019-02-06 15:04:17 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2019-02-11 14:39:29 +0000
commitce19540b77466791a633503b856fcc8374d917d3 (patch)
tree779463ae2a89a14e13007c0a4720a2d251ea46d2 /src/plugins/projectexplorer/kitmanager.h
parentc129b8cfe213b1945b3a1f0fec2ff7000fe9707b (diff)
Move KitAspectWidget definitions alongside their KitAspects
A KitAspectWidget class is tightly coupled with the respective KitAspect, and no one else ever needs to see any KitAspectWidget subclass at build time. Change-Id: I1883af3b054c225e1ff5dd913118715bfdbaacfc Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src/plugins/projectexplorer/kitmanager.h')
-rw-r--r--src/plugins/projectexplorer/kitmanager.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/plugins/projectexplorer/kitmanager.h b/src/plugins/projectexplorer/kitmanager.h
index 0085b67479..e56cbf8929 100644
--- a/src/plugins/projectexplorer/kitmanager.h
+++ b/src/plugins/projectexplorer/kitmanager.h
@@ -37,6 +37,10 @@
#include <functional>
+QT_BEGIN_NAMESPACE
+class QStyle;
+QT_END_NAMESPACE
+
namespace Utils {
class Environment;
class FileName;
@@ -107,6 +111,44 @@ private:
int m_priority = 0; // The higher the closer to the top.
};
+class PROJECTEXPLORER_EXPORT KitAspectWidget : public QObject
+{
+ Q_OBJECT
+
+public:
+ KitAspectWidget(Kit *kit, const KitAspect *ki);
+
+ Core::Id kitInformationId() const;
+
+ virtual QString displayName() const = 0;
+ virtual QString toolTip() const { return QString(); }
+ virtual void makeReadOnly() = 0;
+ virtual void refresh() = 0;
+ virtual bool visibleInKit() { return true; }
+
+ virtual QWidget *mainWidget() const = 0;
+ virtual QWidget *buttonWidget() const { return nullptr; }
+
+ bool isSticky() const { return m_isSticky; }
+ bool isMutable() const;
+ void setMutable(bool b);
+
+ static QString msgManage();
+
+ Kit *kit() const { return m_kit; }
+
+ virtual void setPalette(const QPalette &p);
+ virtual void setStyle(QStyle *s);
+
+signals:
+ void dirty();
+
+protected:
+ Kit *m_kit;
+ const KitAspect *m_kitInformation;
+ bool m_isSticky;
+};
+
class PROJECTEXPLORER_EXPORT KitManager : public QObject
{
Q_OBJECT