diff --git a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp index 2f31dd228..6461eb833 100644 --- a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp +++ b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp @@ -142,8 +142,7 @@ void DeckEditorDatabaseDisplayWidget::updateCard(const QModelIndex ¤t, con } if (!current.model()->hasChildren(current.sibling(current.row(), 0))) { - ExactCard card = CardDatabaseManager::getInstance()->getCard({cardName}); - emit cardChanged(card); + emit cardChanged(getCardOrPinnedPrinting(cardName)); } } @@ -176,7 +175,21 @@ ExactCard DeckEditorDatabaseDisplayWidget::currentCard() const const QString cardName = currentIndex.sibling(currentIndex.row(), 0).data().toString(); - return CardDatabaseManager::getInstance()->getCard({cardName}); + return getCardOrPinnedPrinting(cardName); +} + +ExactCard DeckEditorDatabaseDisplayWidget::getCardOrPinnedPrinting(QString cardName) const +{ + const auto &cardProviderId = SettingsCache::instance().cardOverrides().getCardPreferenceOverride(cardName); + + ExactCard card = CardDatabaseManager::getInstance()->getCard({cardName}); + + if (cardProviderId != "") { + return ExactCard(card.getCardPtr(), + CardDatabaseManager::getInstance()->getSpecificPrinting({cardName, cardProviderId})); + } + + return card; } void DeckEditorDatabaseDisplayWidget::databaseCustomMenu(QPoint point) diff --git a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h index 4e8711b30..4df021087 100644 --- a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h +++ b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h @@ -23,6 +23,7 @@ public: public slots: ExactCard currentCard() const; + ExactCard getCardOrPinnedPrinting(QString cardName) const; void setFilterTree(FilterTree *filterTree); void clearAllDatabaseFilters();