diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp index e31b07db7..572d470f4 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp @@ -561,10 +561,8 @@ void DeckListModel::setDeckList(DeckList *_deck) rebuildTree(); } -QList DeckListModel::getCards() const +static QList cardNodesToExactCards(QList nodes) { - auto nodes = deckList->getCardNodes(); - QList cards; for (auto node : nodes) { ExactCard card = CardDatabaseManager::query()->getCard(node->toCardRef()); @@ -580,23 +578,16 @@ QList DeckListModel::getCards() const return cards; } +QList DeckListModel::getCards() const +{ + auto nodes = deckList->getCardNodes(); + return cardNodesToExactCards(nodes); +} + QList DeckListModel::getCardsForZone(const QString &zoneName) const { auto nodes = deckList->getCardNodes({zoneName}); - - QList cards; - for (auto node : nodes) { - ExactCard card = CardDatabaseManager::query()->getCard(node->toCardRef()); - if (card) { - for (int k = 0; k < node->getNumber(); ++k) { - cards.append(card); - } - } else { - qDebug() << "Card not found in database!"; - } - } - - return cards; + return cardNodesToExactCards(nodes); } QList DeckListModel::getCardNames() const