mirror of
https://github.com/ModOrganizer2/modorganizer.git
synced 2026-07-27 13:58:24 -07:00
70 lines
2.0 KiB
C++
70 lines
2.0 KiB
C++
#include "modinfoforeign.h"
|
|
|
|
#include "iplugingame.h"
|
|
#include "utility.h"
|
|
|
|
#include <QApplication>
|
|
|
|
using namespace MOBase;
|
|
using namespace MOShared;
|
|
|
|
QDateTime ModInfoForeign::creationTime() const
|
|
{
|
|
return m_CreationTime;
|
|
}
|
|
|
|
QString ModInfoForeign::absolutePath() const
|
|
{
|
|
//I ought to store this, it's used elsewhere
|
|
IPluginGame const *game = qApp->property("managed_game").value<IPluginGame *>();
|
|
return game->dataDirectory().absolutePath();
|
|
}
|
|
|
|
std::vector<ModInfo::EFlag> ModInfoForeign::getFlags() const
|
|
{
|
|
std::vector<ModInfo::EFlag> result = ModInfoWithConflictInfo::getFlags();
|
|
result.push_back(FLAG_FOREIGN);
|
|
|
|
if (m_PluginSelected) {
|
|
result.push_back(ModInfo::FLAG_PLUGIN_SELECTED);
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
int ModInfoForeign::getHighlight() const
|
|
{
|
|
return m_PluginSelected ? ModInfo::HIGHLIGHT_PLUGIN : ModInfo::HIGHLIGHT_NONE;
|
|
}
|
|
|
|
QString ModInfoForeign::getDescription() const
|
|
{
|
|
return tr("This pseudo mod represents content managed outside MO. It isn't modified by MO.");
|
|
}
|
|
|
|
ModInfoForeign::ModInfoForeign(const QString &modName,
|
|
const QString &referenceFile,
|
|
const QStringList &archives,
|
|
ModInfo::EModType modType,
|
|
const MOBase::IPluginGame* gamePlugin,
|
|
DirectoryEntry **directoryStructure,
|
|
PluginContainer *pluginContainer)
|
|
: ModInfoWithConflictInfo(pluginContainer, gamePlugin, directoryStructure),
|
|
m_ReferenceFile(referenceFile), m_Archives(archives), m_ModType(modType)
|
|
{
|
|
m_CreationTime = QFileInfo(referenceFile).birthTime();
|
|
switch (modType) {
|
|
case ModInfo::EModType::MOD_DLC:
|
|
m_Name = tr("DLC: ") + modName;
|
|
m_InternalName = QString("DLC: ") + modName;
|
|
break;
|
|
case ModInfo::EModType::MOD_CC:
|
|
m_Name = tr("Creation Club: ") + modName;
|
|
m_InternalName = QString("Creation Club: ") + modName;
|
|
break;
|
|
default:
|
|
m_Name = tr("Unmanaged: ") + modName;
|
|
m_InternalName = QString("Unmanaged: ") + modName;
|
|
}
|
|
}
|