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.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'logic/BaseInstance.cpp') diff --git a/logic/BaseInstance.cpp b/logic/BaseInstance.cpp index 222004a3..d78f1ea0 100644 --- a/logic/BaseInstance.cpp +++ b/logic/BaseInstance.cpp @@ -37,6 +37,7 @@ BaseInstance::BaseInstance(BaseInstancePrivate *d_in, const QString &rootDir, I_D(BaseInstance); d->m_settings = settings_obj; d->m_rootDir = rootDir; + d->m_flags = 0; settings().registerSetting("name", "Unnamed Instance"); settings().registerSetting("iconKey", "default"); @@ -146,6 +147,28 @@ SettingsObject &BaseInstance::settings() const return *d->m_settings; } +BaseInstance::InstanceFlags BaseInstance::flags() const +{ + I_D(const BaseInstance); + return InstanceFlags(d->m_flags); +} + +void BaseInstance::setFlags(const BaseInstance::InstanceFlags flags) +{ + I_D(BaseInstance); + if (flags != d->m_flags) + { + d->m_flags = flags; + emit flagsChanged(); + emit propertiesChanged(this); + } +} + +bool BaseInstance::canLaunch() const +{ + return !(flags() & VersionBrokenFlag); +} + QString BaseInstance::baseJar() const { I_D(BaseInstance); -- cgit v1.2.3