diff options
author | Petr Mrázek <peterix@gmail.com> | 2019-08-03 05:30:46 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2019-08-03 05:30:46 +0200 |
commit | 7d13e3119801862b9fdf64b11a45c41a64b4fc46 (patch) | |
tree | bf57acec88e4c4f09605603291d5483da2a13ab6 /api/logic/minecraft/Mod.h | |
parent | 40c9af1a8b2f42f4c90c8d358eac43370c04a227 (diff) | |
download | MultiMC-7d13e3119801862b9fdf64b11a45c41a64b4fc46.tar MultiMC-7d13e3119801862b9fdf64b11a45c41a64b4fc46.tar.gz MultiMC-7d13e3119801862b9fdf64b11a45c41a64b4fc46.tar.lz MultiMC-7d13e3119801862b9fdf64b11a45c41a64b4fc46.tar.xz MultiMC-7d13e3119801862b9fdf64b11a45c41a64b4fc46.zip |
NOISSUE refactor Mod a bunch, get rid of dead code
Diffstat (limited to 'api/logic/minecraft/Mod.h')
-rw-r--r-- | api/logic/minecraft/Mod.h | 91 |
1 files changed, 32 insertions, 59 deletions
diff --git a/api/logic/minecraft/Mod.h b/api/logic/minecraft/Mod.h index 6d36d525..890669ce 100644 --- a/api/logic/minecraft/Mod.h +++ b/api/logic/minecraft/Mod.h @@ -16,8 +16,26 @@ #pragma once #include <QFileInfo> #include <QDateTime> +#include "multimc_logic_export.h" -class Mod +struct ModDetails +{ + operator bool() const { + return valid; + } + bool valid = false; + QString mod_id; + QString name; + QString version; + QString mcversion; + QString homeurl; + QString updateurl; + QString description; + QStringList authors; + QString credits; +}; + +class MULTIMC_LOGIC_EXPORT Mod { public: enum ModType @@ -39,10 +57,6 @@ public: { return m_mmc_id; } - QString mod_id() const - { - return m_mod_id; - } ModType type() const { return m_type; @@ -51,37 +65,6 @@ public: { return m_type != MOD_UNKNOWN; } - QString name() const - { - QString name = m_name.trimmed(); - if(name.isEmpty() || name == "Example Mod") - { - return m_mmc_id; - } - return m_name; - } - - QString version() const; - - QString homeurl() const - { - return m_homeurl; - } - - QString description() const - { - return m_description; - } - - QString authors() const - { - return m_authors; - } - - QString credits() const - { - return m_credits; - } QDateTime dateTimeChanged() const { @@ -93,39 +76,29 @@ public: return m_enabled; } + const ModDetails &details() const; + + QString name() const; + QString version() const; + QString homeurl() const; + QString description() const; + QStringList authors() const; + bool enable(bool value); // delete all the files of this mod bool destroy(); - // replace this mod with a copy of the other - bool replace(Mod &with); + // change the mod's filesystem path (used by mod lists for *MAGIC* purposes) void repath(const QFileInfo &file); - // WEAK compare operator - used for replacing mods - bool operator==(const Mod &other) const; - bool strongCompare(const Mod &other) const; - -private: - void ReadMCModInfo(QByteArray contents); - void ReadFabricModInfo(QByteArray contents); - void ReadForgeInfo(QByteArray contents); - void ReadLiteModInfo(QByteArray contents); - protected: QFileInfo m_file; QDateTime m_changedDateTime; QString m_mmc_id; - QString m_mod_id; - bool m_enabled = true; QString m_name; - QString m_version; - QString m_mcversion; - QString m_homeurl; - QString m_updateurl; - QString m_description; - QString m_authors; - QString m_credits; - - ModType m_type; + bool m_enabled = true; + ModType m_type = MOD_UNKNOWN; + bool m_bare = true; + ModDetails m_localDetails; }; |