mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-05 21:13:55 -07:00
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:
parent
b1fe4c85d3
commit
3f030fe2dc
3 changed files with 31 additions and 0 deletions
|
|
@ -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();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -15,6 +15,24 @@ CardDatabaseDisplayModel::CardDatabaseDisplayModel(QObject *parent)
|
|||
loadedRowCount = 0;
|
||||
}
|
||||
|
||||
void CardDatabaseDisplayModel::setSourceModel(QAbstractItemModel *model)
|
||||
{
|
||||
QSortFilterProxyModel::setSourceModel(model);
|
||||
|
||||
connect(model, &QAbstractItemModel::rowsInserted, this, [this]() {
|
||||
dirty();
|
||||
});
|
||||
|
||||
connect(model, &QAbstractItemModel::rowsRemoved, this, [this]() {
|
||||
dirty();
|
||||
});
|
||||
|
||||
connect(model, &QAbstractItemModel::modelReset, this, [this]() {
|
||||
loadedRowCount = 0;
|
||||
dirty();
|
||||
});
|
||||
}
|
||||
|
||||
QMap<wchar_t, wchar_t> CardDatabaseDisplayModel::characterTranslation = {{L'“', L'\"'},
|
||||
{L'”', L'\"'},
|
||||
{L'‘', L'\''},
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ private:
|
|||
|
||||
public:
|
||||
explicit CardDatabaseDisplayModel(QObject *parent = nullptr);
|
||||
void setSourceModel(QAbstractItemModel *model) override;
|
||||
void setFilterTree(FilterTree *_filterTree);
|
||||
void setIsToken(FilterBool _isToken)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue