Reload card db and notify enabled sets change on "Manage Sets" dialog save

Took 1 hour 18 minutes

Took 6 seconds
This commit is contained in:
Lukas Brübach 2026-04-29 09:18:15 +02:00
parent b1fe4c85d3
commit 3f030fe2dc
3 changed files with 31 additions and 0 deletions

View file

@ -16,6 +16,7 @@
#include <QPushButton>
#include <QToolBar>
#include <QTreeView>
#include <QtConcurrentRun>
#include <algorithm>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/models/database/card_set/card_sets_model.h>
@ -253,6 +254,17 @@ void WndSets::actSave()
model->save(CardDatabaseManager::getInstance());
SettingsCache::instance().setIncludeRebalancedCards(includeRebalancedCards);
CardPictureLoader::clearPixmapCache();
const auto reloadOk1 = QtConcurrent::run([this] {
CardDatabaseManager::getInstance()->loadCardDatabases();
QMetaObject::Connection conn;
conn = connect(CardDatabaseManager::getInstance(), &CardDatabase::cardDatabaseLoadingFinished, this,
[conn]() mutable {
CardDatabaseManager::getInstance()->notifyEnabledSetsChanged();
QObject::disconnect(conn);
});
SettingsCache::instance().downloads().sync();
});
close();
}