summaryrefslogtreecommitdiff
path: root/src/modlist.cpp
diff options
context:
space:
mode:
authorAL <26797547+Al12rs@users.noreply.github.com>2020-10-31 20:58:07 +0100
committerAL <26797547+Al12rs@users.noreply.github.com>2020-11-02 20:35:05 +0100
commitb7935aedec70dd4f0c40dbe948dba9a80a56a75a (patch)
tree358266669f9163a883dcc4fabf3fcc67f8b80fa0 /src/modlist.cpp
parent88475677d29a275fd9d25f452f58d3d745720124 (diff)
Change Alternatives vector to use a struct
Diffstat (limited to 'src/modlist.cpp')
-rw-r--r--src/modlist.cpp24
1 files changed, 7 insertions, 17 deletions
diff --git a/src/modlist.cpp b/src/modlist.cpp
index f4c034dc..1f845999 100644
--- a/src/modlist.cpp
+++ b/src/modlist.cpp
@@ -854,25 +854,15 @@ void ModList::highlightMods(const QItemSelectionModel *selection, const MOShared
ModInfo::getByIndex(i)->setPluginSelected(false);
}
for (QModelIndex idx : selection->selectedRows(PluginList::COL_NAME)) {
- QString modName = idx.data().toString();
+ QString pluginName = idx.data().toString();
- const MOShared::FileEntryPtr fileEntry = directoryEntry.findFile(modName.toStdWString());
+ const MOShared::FileEntryPtr fileEntry = directoryEntry.findFile(pluginName.toStdWString());
if (fileEntry.get() != nullptr) {
- bool archive = false;
- std::vector<std::pair<int, std::pair<std::wstring, int>>> origins;
- {
- std::vector<std::pair<int, std::pair<std::wstring, int>>> alternatives = fileEntry->getAlternatives();
- origins.insert(origins.end(), std::pair<int, std::pair<std::wstring, int>>(fileEntry->getOrigin(archive), fileEntry->getArchive()));
- }
- for (auto originInfo : origins) {
- MOShared::FilesOrigin& origin = directoryEntry.getOriginByID(originInfo.first);
- for (unsigned int i = 0; i < ModInfo::getNumMods(); ++i) {
- if (ModInfo::getByIndex(i)->internalName() == QString::fromStdWString(origin.getName())) {
- ModInfo::getByIndex(i)->setPluginSelected(true);
- break;
- }
- }
- }
+
+ QString originName = QString::fromStdWString(directoryEntry.getOriginByID(fileEntry->getOrigin()).getName());
+
+ auto modInfo = ModInfo::getByName(originName);
+ modInfo->setPluginSelected(true);
}
}
notifyChange(0, rowCount() - 1);