From 160d66d89023b2f0fa6b57827adee1044613a922 Mon Sep 17 00:00:00 2001 From: ctrlaltca Date: Tue, 25 Apr 2017 17:32:51 +0200 Subject: [PATCH] show tokens all sets (#2646) --- cockatrice/src/carddatabasemodel.cpp | 7 +++++-- cockatrice/src/carddatabasemodel.h | 3 ++- cockatrice/src/dlg_create_token.cpp | 2 +- cockatrice/src/dlg_edit_tokens.cpp | 2 +- cockatrice/src/tab_deck_editor.cpp | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/cockatrice/src/carddatabasemodel.cpp b/cockatrice/src/carddatabasemodel.cpp index ced3443a..1dd72a7b 100644 --- a/cockatrice/src/carddatabasemodel.cpp +++ b/cockatrice/src/carddatabasemodel.cpp @@ -3,8 +3,8 @@ #define CARDDBMODEL_COLUMNS 6 -CardDatabaseModel::CardDatabaseModel(CardDatabase *_db, QObject *parent) - : QAbstractListModel(parent), db(_db) +CardDatabaseModel::CardDatabaseModel(CardDatabase *_db, bool _showOnlyCardsFromEnabledSets, QObject *parent) + : QAbstractListModel(parent), db(_db), showOnlyCardsFromEnabledSets(_showOnlyCardsFromEnabledSets) { connect(db, SIGNAL(cardAdded(CardInfo *)), this, SLOT(cardAdded(CardInfo *))); connect(db, SIGNAL(cardRemoved(CardInfo *)), this, SLOT(cardRemoved(CardInfo *))); @@ -77,6 +77,9 @@ void CardDatabaseModel::cardInfoChanged(CardInfo *card) bool CardDatabaseModel::checkCardHasAtLeastOneEnabledSet(CardInfo *card) { + if(!showOnlyCardsFromEnabledSets) + return true; + foreach(CardSet * set, card->getSets()) { if(set->getEnabled()) diff --git a/cockatrice/src/carddatabasemodel.h b/cockatrice/src/carddatabasemodel.h index 5acc5904..c6fa0f9a 100644 --- a/cockatrice/src/carddatabasemodel.h +++ b/cockatrice/src/carddatabasemodel.h @@ -14,7 +14,7 @@ class CardDatabaseModel : public QAbstractListModel { public: enum Columns { NameColumn, SetListColumn, ManaCostColumn, PTColumn, CardTypeColumn, ColorColumn }; enum Role { SortRole=Qt::UserRole }; - CardDatabaseModel(CardDatabase *_db, QObject *parent = 0); + CardDatabaseModel(CardDatabase *_db, bool _showOnlyCardsFromEnabledSets, QObject *parent = 0); ~CardDatabaseModel(); int rowCount(const QModelIndex &parent = QModelIndex()) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; @@ -25,6 +25,7 @@ public: private: QList cardList; CardDatabase *db; + bool showOnlyCardsFromEnabledSets; inline bool checkCardHasAtLeastOneEnabledSet(CardInfo *card); private slots: diff --git a/cockatrice/src/dlg_create_token.cpp b/cockatrice/src/dlg_create_token.cpp index 604e2675..0a5c16bc 100644 --- a/cockatrice/src/dlg_create_token.cpp +++ b/cockatrice/src/dlg_create_token.cpp @@ -67,7 +67,7 @@ DlgCreateToken::DlgCreateToken(const QStringList &_predefinedTokens, QWidget *pa QGroupBox *tokenDataGroupBox = new QGroupBox(tr("Token data")); tokenDataGroupBox->setLayout(grid); - cardDatabaseModel = new CardDatabaseModel(db, this); + cardDatabaseModel = new CardDatabaseModel(db, false, this); cardDatabaseDisplayModel = new TokenDisplayModel(this); cardDatabaseDisplayModel->setSourceModel(cardDatabaseModel); diff --git a/cockatrice/src/dlg_edit_tokens.cpp b/cockatrice/src/dlg_edit_tokens.cpp index 7293bc3a..00cf354f 100644 --- a/cockatrice/src/dlg_edit_tokens.cpp +++ b/cockatrice/src/dlg_edit_tokens.cpp @@ -60,7 +60,7 @@ DlgEditTokens::DlgEditTokens(QWidget *parent) QGroupBox *tokenDataGroupBox = new QGroupBox(tr("Token data")); tokenDataGroupBox->setLayout(grid); - databaseModel = new CardDatabaseModel(db, this); + databaseModel = new CardDatabaseModel(db, false, this); databaseModel->setObjectName("databaseModel"); cardDatabaseDisplayModel = new TokenDisplayModel(this); cardDatabaseDisplayModel->setSourceModel(databaseModel); diff --git a/cockatrice/src/tab_deck_editor.cpp b/cockatrice/src/tab_deck_editor.cpp index 56f0f1bf..ffe9b671 100644 --- a/cockatrice/src/tab_deck_editor.cpp +++ b/cockatrice/src/tab_deck_editor.cpp @@ -324,7 +324,7 @@ void TabDeckEditor::createCentralFrame() connect(&searchKeySignals, SIGNAL(onCtrlAltEnter()), this, SLOT(actAddCardToSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlEnter()), this, SLOT(actAddCardToSideboard())); - databaseModel = new CardDatabaseModel(db, this); + databaseModel = new CardDatabaseModel(db, true, this); databaseModel->setObjectName("databaseModel"); databaseDisplayModel = new CardDatabaseDisplayModel(this); databaseDisplayModel->setSourceModel(databaseModel);