From 2e1f5332dbc7bc75ce39ec25ef518688b9ca4280 Mon Sep 17 00:00:00 2001 From: Phoenix Osiris Date: Wed, 17 Jul 2013 17:21:00 -0400 Subject: [PATCH] Adding Set Code To Filtering Method Updating Tab To Include Set Param --- cockatrice/src/carddatabasemodel.cpp | 13 +++++++++++++ cockatrice/src/carddatabasemodel.h | 3 ++- cockatrice/src/dlg_cardsearch.cpp | 4 ++++ cockatrice/src/tab_deck_editor.cpp | 3 ++- 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/cockatrice/src/carddatabasemodel.cpp b/cockatrice/src/carddatabasemodel.cpp index d63f6bdef..d6d5f05cb 100644 --- a/cockatrice/src/carddatabasemodel.cpp +++ b/cockatrice/src/carddatabasemodel.cpp @@ -144,6 +144,19 @@ bool CardDatabaseDisplayModel::filterAcceptsRow(int sourceRow, const QModelIndex if (!cardTypes.contains(info->getMainCardType())) return false; + if (!cardSet.isEmpty()) { + bool blnGood = false; + for(int intLoop = 0; intLoop < info->getSets().count(); intLoop++) { + if (info->getSets().at(intLoop)->getShortName() == cardSet) { + blnGood = true; + break; + } + } + if (!blnGood) { + return false; + } + } + return true; } diff --git a/cockatrice/src/carddatabasemodel.h b/cockatrice/src/carddatabasemodel.h index b2998bfee..29d0711b7 100644 --- a/cockatrice/src/carddatabasemodel.h +++ b/cockatrice/src/carddatabasemodel.h @@ -34,7 +34,7 @@ public: enum FilterBool { ShowTrue, ShowFalse, ShowAll }; private: FilterBool isToken; - QString cardNameBeginning, cardName, cardText; + QString cardNameBeginning, cardName, cardText, cardSet; QSet cardNameSet, cardTypes, cardColors; public: CardDatabaseDisplayModel(QObject *parent = 0); @@ -43,6 +43,7 @@ public: void setCardName(const QString &_cardName) { cardName = _cardName; invalidate(); } void setCardNameSet(const QSet &_cardNameSet) { cardNameSet = _cardNameSet; invalidate(); } void setCardText(const QString &_cardText) { cardText = _cardText; invalidate(); } + void setCardSet(const QString &_cardSet) { cardSet = _cardSet; invalidate(); } void setCardTypes(const QSet &_cardTypes) { cardTypes = _cardTypes; invalidate(); } void setCardColors(const QSet &_cardColors) { cardColors = _cardColors; invalidate(); } void clearSearch(); diff --git a/cockatrice/src/dlg_cardsearch.cpp b/cockatrice/src/dlg_cardsearch.cpp index b7921b313..a60a1ec39 100644 --- a/cockatrice/src/dlg_cardsearch.cpp +++ b/cockatrice/src/dlg_cardsearch.cpp @@ -89,6 +89,10 @@ QString DlgCardSearch::getCardText() const return cardTextEdit->text(); } +QString DlgCardSearch::getCardSet() const { + return cboSetList->itemData(cboSetList->currentIndex()).toString(); +} + QSet DlgCardSearch::getCardTypes() const { QStringList result; diff --git a/cockatrice/src/tab_deck_editor.cpp b/cockatrice/src/tab_deck_editor.cpp index 216958ac5..1dbc1a777 100644 --- a/cockatrice/src/tab_deck_editor.cpp +++ b/cockatrice/src/tab_deck_editor.cpp @@ -504,7 +504,8 @@ void TabDeckEditor::actSearch() databaseDisplayModel->setCardName(dlgCardSearch->getCardName()); databaseDisplayModel->setCardText(dlgCardSearch->getCardText()); databaseDisplayModel->setCardTypes(dlgCardSearch->getCardTypes()); - databaseDisplayModel->setCardColors(dlgCardSearch->getCardColors()); + databaseDisplayModel->setCardColors(dlgCardSearch->getCardColors()); + databaseDisplayModel->setCardSet(dlgCardSearch->getCardSet()); } }