summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLostDragonist <lost.dragonist@gmail.com>2019-03-30 22:27:26 -0500
committerLostDragonist <lost.dragonist@gmail.com>2019-03-30 22:27:26 -0500
commitc362199ac04da66ddeb0a29abf8f4fc765ac9bfe (patch)
tree3dce51de07d327f16fcacc9782105f34be45f9d0
parent22d3f0cd3ca475c95095e158d95dd1a1e22f8229 (diff)
Fix performance when selecting many mods
-rw-r--r--src/mainwindow.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 1569eba5..8066c59f 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -2593,12 +2593,11 @@ void MainWindow::modlistSelectionsChanged(const QItemSelection &selected)
{
if (selected.count()) {
auto selection = selected.last();
- for (auto index : selection.indexes()) {
- ModInfo::Ptr selectedMod = ModInfo::getByIndex(index.data(Qt::UserRole + 1).toInt());
- m_OrganizerCore.modList()->setOverwriteMarkers(selectedMod->getModOverwrite(), selectedMod->getModOverwritten());
- m_OrganizerCore.modList()->setArchiveOverwriteMarkers(selectedMod->getModArchiveOverwrite(), selectedMod->getModArchiveOverwritten());
- m_OrganizerCore.modList()->setArchiveLooseOverwriteMarkers(selectedMod->getModArchiveLooseOverwrite(), selectedMod->getModArchiveLooseOverwritten());
- }
+ auto index = selection.indexes().last();
+ ModInfo::Ptr selectedMod = ModInfo::getByIndex(index.data(Qt::UserRole + 1).toInt());
+ m_OrganizerCore.modList()->setOverwriteMarkers(selectedMod->getModOverwrite(), selectedMod->getModOverwritten());
+ m_OrganizerCore.modList()->setArchiveOverwriteMarkers(selectedMod->getModArchiveOverwrite(), selectedMod->getModArchiveOverwritten());
+ m_OrganizerCore.modList()->setArchiveLooseOverwriteMarkers(selectedMod->getModArchiveLooseOverwrite(), selectedMod->getModArchiveLooseOverwritten());
} else {
m_OrganizerCore.modList()->setOverwriteMarkers(std::set<unsigned int>(), std::set<unsigned int>());
m_OrganizerCore.modList()->setArchiveOverwriteMarkers(std::set<unsigned int>(), std::set<unsigned int>());