summaryrefslogtreecommitdiff
path: root/src/modinfoforeign.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modinfoforeign.cpp')
-rw-r--r--src/modinfoforeign.cpp50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/modinfoforeign.cpp b/src/modinfoforeign.cpp
new file mode 100644
index 00000000..c0e769c9
--- /dev/null
+++ b/src/modinfoforeign.cpp
@@ -0,0 +1,50 @@
+#include "modinfoforeign.h"
+
+#include "gameinfo.h"
+#include "utility.h"
+
+using namespace MOBase;
+using namespace MOShared;
+
+QString ModInfoForeign::name() const
+{
+ return m_Name;
+}
+
+QDateTime ModInfoForeign::creationTime() const
+{
+ return m_CreationTime;
+}
+
+QString ModInfoForeign::absolutePath() const
+{
+ return QDir::fromNativeSeparators(ToQString(GameInfo::instance().getGameDirectory())) + "/data";
+}
+
+std::vector<ModInfo::EFlag> ModInfoForeign::getFlags() const
+{
+ std::vector<ModInfo::EFlag> result = ModInfoWithConflictInfo::getFlags();
+ result.push_back(FLAG_FOREIGN);
+
+ return result;
+}
+
+int ModInfoForeign::getHighlight() const
+{
+ return 0;
+}
+
+QString ModInfoForeign::getDescription() const
+{
+ return tr("This pseudo mod represents content managed outside MO. It isn't modified by MO.");
+}
+
+ModInfoForeign::ModInfoForeign(const QString &referenceFile, const QStringList &archives,
+ DirectoryEntry **directoryStructure)
+ : ModInfoWithConflictInfo(directoryStructure)
+ , m_ReferenceFile(referenceFile)
+ , m_Archives(archives)
+{
+ m_CreationTime = QFileInfo(referenceFile).created();
+ m_Name = "Unmanaged: " + QFileInfo(m_ReferenceFile).baseName();
+}