From 0b56b5efafffca77d6deee966097c55e78fb0aef Mon Sep 17 00:00:00 2001 From: Jan Dalheimer Date: Mon, 17 Feb 2014 20:31:50 +0100 Subject: Instance flags. Currently used for marking instances as broken. Can later be used for badges. --- logic/BaseInstance.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'logic/BaseInstance.h') diff --git a/logic/BaseInstance.h b/logic/BaseInstance.h index cd49f99b..91b83bfc 100644 --- a/logic/BaseInstance.h +++ b/logic/BaseInstance.h @@ -175,6 +175,17 @@ public: /// FIXME: this really should be elsewhere... virtual QString instanceConfigFolder() const = 0; + enum InstanceFlag + { + NoFlags = 0x00, + VersionBrokenFlag = 0x01 + }; + Q_DECLARE_FLAGS(InstanceFlags, InstanceFlag) + InstanceFlags flags() const; + void setFlags(const BaseInstance::InstanceFlags flags); + + bool canLaunch() const; + signals: /*! * \brief Signal emitted when properties relevant to the instance view change @@ -189,6 +200,8 @@ signals: */ void nuked(BaseInstance *inst); + void flagsChanged(); + protected slots: void iconUpdated(QString key); @@ -198,3 +211,5 @@ protected: // pointer for lazy people typedef std::shared_ptr InstancePtr; + +Q_DECLARE_OPERATORS_FOR_FLAGS(BaseInstance::InstanceFlags) -- cgit v1.2.3