diff options
author | Jan Dalheimer <jan@dalheimer.de> | 2014-03-10 19:24:29 +0100 |
---|---|---|
committer | Jan Dalheimer <jan@dalheimer.de> | 2014-03-10 19:24:29 +0100 |
commit | fcc5bc2ce0a1c8c3f9df9230710dd60363eb5cdb (patch) | |
tree | 851d8f8b6e6734e26fd2e4dc7b7477630329ff01 /logic/OneSixVersionBuilder.h | |
parent | 73fc9c79cff979e9023df0b1a77848c67b590681 (diff) | |
parent | d11f10ea1ed54336254838ff068258d2d42e0774 (diff) | |
download | MultiMC-fcc5bc2ce0a1c8c3f9df9230710dd60363eb5cdb.tar MultiMC-fcc5bc2ce0a1c8c3f9df9230710dd60363eb5cdb.tar.gz MultiMC-fcc5bc2ce0a1c8c3f9df9230710dd60363eb5cdb.tar.lz MultiMC-fcc5bc2ce0a1c8c3f9df9230710dd60363eb5cdb.tar.xz MultiMC-fcc5bc2ce0a1c8c3f9df9230710dd60363eb5cdb.zip |
Merge branch 'develop' into feature_badges
Conflicts:
logic/OneSixInstance.cpp
Diffstat (limited to 'logic/OneSixVersionBuilder.h')
-rw-r--r-- | logic/OneSixVersionBuilder.h | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/logic/OneSixVersionBuilder.h b/logic/OneSixVersionBuilder.h index 8cf6f32f..8be3d9d3 100644 --- a/logic/OneSixVersionBuilder.h +++ b/logic/OneSixVersionBuilder.h @@ -17,39 +17,32 @@ #include <QString> #include <QMap> +#include "VersionFile.h" -class OneSixVersion; +class VersionFinal; class OneSixInstance; -class QWidget; class QJsonObject; class QFileInfo; -class VersionFile; class OneSixVersionBuilder { OneSixVersionBuilder(); public: - static bool build(OneSixVersion *version, OneSixInstance *instance, QWidget *widgetParent, const bool onlyVanilla, const QStringList &external); - static bool read(OneSixVersion *version, const QJsonObject &obj); + static void build(VersionFinal *version, OneSixInstance *instance, const bool onlyVanilla, + const QStringList &external); + static void readJsonAndApplyToVersion(VersionFinal *version, const QJsonObject &obj); + static QMap<QString, int> readOverrideOrders(OneSixInstance *instance); static bool writeOverrideOrders(const QMap<QString, int> &order, OneSixInstance *instance); - enum ParseFlag - { - NoFlags = 0x0, - IsFTBPackJson = 0x1 - }; - Q_DECLARE_FLAGS(ParseFlags, ParseFlag) - private: - OneSixVersion *m_version; + VersionFinal *m_version; OneSixInstance *m_instance; - QWidget *m_widgetParent; - bool build(const bool onlyVanilla, const QStringList &external); - bool read(const QJsonObject &obj); + void buildInternal(const bool onlyVanilla, const QStringList &external); + void readJsonAndApply(const QJsonObject &obj); + void finalizeVersion(); - bool read(const QFileInfo &fileInfo, const bool requireOrder, VersionFile *out, const ParseFlags flags = NoFlags); + VersionFilePtr parseJsonFile(const QFileInfo &fileInfo, const bool requireOrder, + bool isFTB = false); }; - -Q_DECLARE_OPERATORS_FOR_FLAGS(OneSixVersionBuilder::ParseFlags) |