summaryrefslogtreecommitdiff
path: root/src/modlist.cpp
diff options
context:
space:
mode:
authorSilarn <jrim@rimpo.org>2018-04-27 01:57:59 -0500
committerSilarn <jrim@rimpo.org>2018-04-27 01:57:59 -0500
commite02614ee1455f0ae9fb9ec9df3b928381ae98079 (patch)
tree8c07023d52b834872af32a8d81244a45f9d079fe /src/modlist.cpp
parentcfbe399bbaa6c244359682b71a949bf6cf4d3b4e (diff)
Add alternative game flag and check
Diffstat (limited to 'src/modlist.cpp')
-rw-r--r--src/modlist.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/modlist.cpp b/src/modlist.cpp
index 8c906822..aad88d1f 100644
--- a/src/modlist.cpp
+++ b/src/modlist.cpp
@@ -25,6 +25,7 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#include "viewmarkingscrollbar.h"
#include "modlistsortproxy.h"
#include "settings.h"
+#include "modinforegular.h"
#include <appconfig.h>
#include <utility.h>
#include <report.h>
@@ -149,6 +150,7 @@ QString ModList::getFlagText(ModInfo::EFlag flag, ModInfo::Ptr modInfo) const
case ModInfo::FLAG_CONFLICT_OVERWRITTEN: return tr("Overwritten files");
case ModInfo::FLAG_CONFLICT_MIXED: return tr("Overwrites & Overwritten");
case ModInfo::FLAG_CONFLICT_REDUNDANT: return tr("Redundant");
+ case ModInfo::FLAG_ALTERNATE_GAME: return tr("Alternate game source");
default: return "";
}
}
@@ -759,6 +761,11 @@ IModList::ModStates ModList::state(unsigned int modIndex) const
if (modInfo->isValid()) {
result |= IModList::STATE_VALID;
}
+ if (modInfo->isRegular()) {
+ QSharedPointer<ModInfoRegular> modInfoRegular = modInfo.staticCast<ModInfoRegular>();
+ if (modInfoRegular->isAlternate())
+ result |= IModList::STATE_ALTERNATE;
+ }
if (modInfo->canBeEnabled()) {
if (m_Profile->modEnabled(modIndex)) {
result |= IModList::STATE_ACTIVE;