From 4b1e6683d258412dd6e02c55618ff158c749ab4a Mon Sep 17 00:00:00 2001 From: Tannin Date: Mon, 18 Aug 2014 23:00:25 +0200 Subject: - can now filter by mod content - all files/directories that require write access can now be placed in AppData instead of the MO directory --- src/modinfo.cpp | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'src/modinfo.cpp') diff --git a/src/modinfo.cpp b/src/modinfo.cpp index 60df0137..9558e03b 100644 --- a/src/modinfo.cpp +++ b/src/modinfo.cpp @@ -72,7 +72,6 @@ ModInfo::Ptr ModInfo::createFrom(const QDir &dir, DirectoryEntry **directoryStru return result; } - ModInfo::Ptr ModInfo::createFromPlugin(const QString &espName, const QStringList &bsaNames , DirectoryEntry ** directoryStructure) { @@ -82,6 +81,22 @@ ModInfo::Ptr ModInfo::createFromPlugin(const QString &espName, const QStringList return result; } +QString ModInfo::getContentTypeName(int contentType) +{ + switch (contentType) { + case CONTENT_PLUGIN: return tr("Plugins"); + case CONTENT_TEXTURE: return tr("Textures"); + case CONTENT_MESH: return tr("Meshes"); + case CONTENT_INTERFACE: return tr("UI Changes"); + case CONTENT_MUSIC: return tr("Music"); + case CONTENT_SOUND: return tr("Sound Effects"); + case CONTENT_SCRIPT: return tr("Scripts"); + case CONTENT_SKSE: return tr("SKSE Plugins"); + case CONTENT_SKYPROC: return tr("SkyProc Tools"); + case CONTENT_STRING: return tr("Strings"); + default: throw MyException(tr("invalid content type %1").arg(contentType)); + } +} void ModInfo::createFromOverwrite() { @@ -90,7 +105,6 @@ void ModInfo::createFromOverwrite() s_Collection.push_back(ModInfo::Ptr(new ModInfoOverwrite)); } - unsigned int ModInfo::getNumMods() { QMutexLocker locker(&s_Mutex); @@ -288,6 +302,11 @@ bool ModInfo::hasFlag(ModInfo::EFlag flag) const return std::find(flags.begin(), flags.end(), flag) != flags.end(); } +bool ModInfo::hasContent(ModInfo::EContent content) const +{ + std::vector contents = getContents(); + return std::find(contents.begin(), contents.end(), content) != contents.end(); +} bool ModInfo::categorySet(int categoryID) const { -- cgit v1.3.1