summaryrefslogtreecommitdiffstats
path: root/logic/Mod.h
diff options
context:
space:
mode:
Diffstat (limited to 'logic/Mod.h')
-rw-r--r--logic/Mod.h69
1 files changed, 48 insertions, 21 deletions
diff --git a/logic/Mod.h b/logic/Mod.h
index fcfcc139..9831fdc0 100644
--- a/logic/Mod.h
+++ b/logic/Mod.h
@@ -1,12 +1,12 @@
-//
+//
// Copyright 2012 MultiMC Contributors
-//
+//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
-//
+//
// http://www.apache.org/licenses/LICENSE-2.0
-//
+//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -22,46 +22,72 @@ class Mod
public:
enum ModType
{
- MOD_UNKNOWN, //!< Indicates an unspecified mod type.
- MOD_ZIPFILE, //!< The mod is a zip file containing the mod's class files.
+ MOD_UNKNOWN, //!< Indicates an unspecified mod type.
+ MOD_ZIPFILE, //!< The mod is a zip file containing the mod's class files.
MOD_SINGLEFILE, //!< The mod is a single file (not a zip file).
- MOD_FOLDER, //!< The mod is in a folder on the filesystem.
+ MOD_FOLDER, //!< The mod is in a folder on the filesystem.
};
Mod(const QFileInfo &file);
-
- QFileInfo filename() const { return m_file; }
- QString id() const { return m_id; }
- ModType type() const { return m_type; }
- QString mcversion() const { return m_mcversion; };
- bool valid() {return m_type != MOD_UNKNOWN;}
- QString name() const {return m_name; };
-
+
+ QFileInfo filename() const
+ {
+ return m_file;
+ }
+ QString id() const
+ {
+ return m_id;
+ }
+ ModType type() const
+ {
+ return m_type;
+ }
+ QString mcversion() const
+ {
+ return m_mcversion;
+ }
+ ;
+ bool valid()
+ {
+ return m_type != MOD_UNKNOWN;
+ }
+ QString name() const
+ {
+ return m_name;
+ }
+
QString version() const;
-
-
+
+ QString homeurl() const
+ {
+ return m_homeurl;
+ }
+
// delete all the files of this mod
bool destroy();
// replace this mod with a copy of the other
- bool replace(Mod & with);
+ 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 operator==(const Mod &other) const
{
return filename() == other.filename();
}
bool strongCompare(const Mod &other) const
{
- return filename() == other.filename() && id() == other.id() && version() == other.version() && type() == other.type();
+ return filename() == other.filename() && id() == other.id() &&
+ version() == other.version() && type() == other.type();
}
+
private:
void ReadMCModInfo(QByteArray contents);
void ReadForgeInfo(QByteArray contents);
+
protected:
- //FIXME: what do do with those? HMM...
+ // FIXME: what do do with those? HMM...
/*
void ReadModInfoData(QString info);
void ReadForgeInfoData(QString infoFileData);
@@ -72,6 +98,7 @@ protected:
QString m_name;
QString m_version;
QString m_mcversion;
+ QString m_homeurl;
ModType m_type;
};