diff options
Diffstat (limited to 'logic/BaseInstance.h')
-rw-r--r-- | logic/BaseInstance.h | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/logic/BaseInstance.h b/logic/BaseInstance.h index 16791592..0cd17de9 100644 --- a/logic/BaseInstance.h +++ b/logic/BaseInstance.h @@ -19,12 +19,13 @@ #include <QDateTime> #include <QSet> -#include <settingsobject.h> +#include "logic/settings/SettingsObject.h" -#include "inifile.h" -#include "lists/BaseVersionList.h" +#include "logic/settings/INIFile.h" +#include "logic/BaseVersionList.h" #include "logic/auth/MojangAccount.h" +class ModList; class QDialog; class QDir; class Task; @@ -64,6 +65,9 @@ public: /// be unique. virtual QString id() const; + virtual void setRunning(bool running) const; + virtual bool isRunning() const; + /// get the type of this instance QString instanceType() const; @@ -89,7 +93,7 @@ public: void setGroupInitial(QString val); void setGroupPost(QString val); - QStringList extraArguments() const; + virtual QStringList extraArguments() const; virtual QString intendedVersionId() const = 0; virtual bool setIntendedVersionId(QString version) = 0; @@ -110,6 +114,19 @@ public: virtual bool shouldUpdate() const = 0; virtual void setShouldUpdate(bool val) = 0; + ////// Mod Lists ////// + virtual std::shared_ptr<ModList> resourcePackList() + { + return nullptr; + } + virtual std::shared_ptr<ModList> texturePackList() + { + return nullptr; + } + + /// Traits. Normally inside the version, depends on instance implementation. + virtual QSet <QString> traits() = 0; + /// Get the curent base jar of this instance. By default, it's the /// versions/$version/$version.jar QString baseJar() const; @@ -169,12 +186,6 @@ public: /// 'prepareForLaunch' virtual void cleanupAfterRun() = 0; - /// create a mod edit dialog for the instance - virtual QDialog *createModEditDialog(QWidget *parent) = 0; - - /// is a particular action enabled with this instance selected? - virtual bool menuActionEnabled(QString action_name) const = 0; - virtual QString getStatusbarDescription() = 0; /// FIXME: this really should be elsewhere... |