summaryrefslogtreecommitdiffstats
path: root/logic/BaseInstance.h
diff options
context:
space:
mode:
authorJan Dalheimer <jan@dalheimer.de>2014-02-17 20:31:50 +0100
committerJan Dalheimer <jan@dalheimer.de>2014-02-17 20:31:50 +0100
commit0b56b5efafffca77d6deee966097c55e78fb0aef (patch)
treeddb7011fde89c587b864a8c1d6d36cdcaef6472b /logic/BaseInstance.h
parent4e8be668cb9b3c4929748aafb1baf53e6b1c098b (diff)
downloadMultiMC-0b56b5efafffca77d6deee966097c55e78fb0aef.tar
MultiMC-0b56b5efafffca77d6deee966097c55e78fb0aef.tar.gz
MultiMC-0b56b5efafffca77d6deee966097c55e78fb0aef.tar.lz
MultiMC-0b56b5efafffca77d6deee966097c55e78fb0aef.tar.xz
MultiMC-0b56b5efafffca77d6deee966097c55e78fb0aef.zip
Instance flags. Currently used for marking instances as broken. Can later be used for badges.
Diffstat (limited to 'logic/BaseInstance.h')
-rw-r--r--logic/BaseInstance.h15
1 files changed, 15 insertions, 0 deletions
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<BaseInstance> InstancePtr;
+
+Q_DECLARE_OPERATORS_FOR_FLAGS(BaseInstance::InstanceFlags)