rename methods

This commit is contained in:
RickyRister 2025-07-12 04:42:38 -07:00
parent 4cef5692bc
commit 5bbfad46af
30 changed files with 85 additions and 93 deletions

View file

@ -161,8 +161,7 @@ void AbstractTabDeckEditor::openDeck(DeckLoader *deck)
void AbstractTabDeckEditor::setDeck(DeckLoader *_deck) void AbstractTabDeckEditor::setDeck(DeckLoader *_deck)
{ {
deckDockWidget->setDeck(_deck); deckDockWidget->setDeck(_deck);
PictureLoader::cacheCardPixmaps( PictureLoader::cacheCardPixmaps(CardDatabaseManager::getInstance()->getCards(getDeckList()->getCardRefList()));
CardDatabaseManager::getInstance()->getCardsByNameAndProviderId(getDeckList()->getCardRefList()));
setModified(false); setModified(false);
// If they load a deck, make the deck list appear // If they load a deck, make the deck list appear

View file

@ -15,7 +15,7 @@ EdhrecCommanderResponseCommanderDetailsDisplayWidget::EdhrecCommanderResponseCom
setLayout(layout); setLayout(layout);
commanderPicture = new CardInfoPictureWidget(this); commanderPicture = new CardInfoPictureWidget(this);
commanderPicture->setCard(CardDatabaseManager::getInstance()->getCard(commanderDetails.getName())); commanderPicture->setCard(CardDatabaseManager::getInstance()->getCardInfo(commanderDetails.getName()));
QWidget *currentParent = parentWidget(); QWidget *currentParent = parentWidget();
TabEdhRecMain *parentTab = nullptr; TabEdhRecMain *parentTab = nullptr;

View file

@ -136,7 +136,7 @@ void TabEdhRecMain::retranslateUi()
void TabEdhRecMain::doSearch() void TabEdhRecMain::doSearch()
{ {
CardInfoPtr searchedCard = CardDatabaseManager::getInstance()->getCard(searchBar->text()); CardInfoPtr searchedCard = CardDatabaseManager::getInstance()->getCardInfo(searchBar->text());
if (!searchedCard) { if (!searchedCard) {
return; return;
} }

View file

@ -929,8 +929,8 @@ void TabGame::eventGameStateChanged(const Event_GameStateChanged &event,
DeckViewContainer *deckViewContainer = deckViewContainers.value(playerId); DeckViewContainer *deckViewContainer = deckViewContainers.value(playerId);
if (playerInfo.has_deck_list()) { if (playerInfo.has_deck_list()) {
DeckLoader newDeck(QString::fromStdString(playerInfo.deck_list())); DeckLoader newDeck(QString::fromStdString(playerInfo.deck_list()));
PictureLoader::cacheCardPixmaps(CardDatabaseManager::getInstance()->getCardsByNameAndProviderId( PictureLoader::cacheCardPixmaps(
newDeck.getCardRefList())); CardDatabaseManager::getInstance()->getCards(newDeck.getCardRefList()));
deckViewContainer->setDeck(newDeck); deckViewContainer->setDeck(newDeck);
player->setDeck(newDeck); player->setDeck(newDeck);
} }

View file

@ -95,7 +95,7 @@ void TappedOutInterface::analyzeDeck(DeckList *deck)
void TappedOutInterface::copyDeckSplitMainAndSide(DeckList &source, DeckList &mainboard, DeckList &sideboard) void TappedOutInterface::copyDeckSplitMainAndSide(DeckList &source, DeckList &mainboard, DeckList &sideboard)
{ {
auto copyMainOrSide = [this, &mainboard, &sideboard](const auto node, const auto card) { auto copyMainOrSide = [this, &mainboard, &sideboard](const auto node, const auto card) {
CardInfoPtr dbCard = cardDatabase.getCard(card->getName()); CardInfoPtr dbCard = cardDatabase.getCardInfo(card->getName());
if (!dbCard || dbCard->getIsToken()) if (!dbCard || dbCard->getIsToken())
return; return;

View file

@ -46,7 +46,7 @@ QWidget *CardGroupDisplayWidget::constructWidgetForIndex(int rowIndex)
auto widget = new CardInfoPictureWithTextOverlayWidget(getLayoutParent(), true); auto widget = new CardInfoPictureWithTextOverlayWidget(getLayoutParent(), true);
widget->setScaleFactor(cardSizeWidget->getSlider()->value()); widget->setScaleFactor(cardSizeWidget->getSlider()->value());
widget->setCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId({cardName, cardProviderId})); widget->setCard(CardDatabaseManager::getInstance()->getCard({cardName, cardProviderId}));
connect(widget, &CardInfoPictureWithTextOverlayWidget::imageClicked, this, &CardGroupDisplayWidget::onClick); connect(widget, &CardInfoPictureWithTextOverlayWidget::imageClicked, this, &CardGroupDisplayWidget::onClick);
connect(widget, &CardInfoPictureWithTextOverlayWidget::hoveredOnCard, this, &CardGroupDisplayWidget::onHover); connect(widget, &CardInfoPictureWithTextOverlayWidget::hoveredOnCard, this, &CardGroupDisplayWidget::onHover);

View file

@ -89,7 +89,7 @@ QWidget *FlatCardGroupDisplayWidget::constructWidgetForIndex(int row)
auto widget = new CardInfoPictureWithTextOverlayWidget(flowWidget, true); auto widget = new CardInfoPictureWithTextOverlayWidget(flowWidget, true);
widget->setScaleFactor(cardSizeWidget->getSlider()->value()); widget->setScaleFactor(cardSizeWidget->getSlider()->value());
widget->setCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId({cardName, cardProviderId})); widget->setCard(CardDatabaseManager::getInstance()->getCard({cardName, cardProviderId}));
connect(widget, &CardInfoPictureWithTextOverlayWidget::imageClicked, this, &FlatCardGroupDisplayWidget::onClick); connect(widget, &CardInfoPictureWithTextOverlayWidget::imageClicked, this, &FlatCardGroupDisplayWidget::onClick);
connect(widget, &CardInfoPictureWithTextOverlayWidget::hoveredOnCard, this, &FlatCardGroupDisplayWidget::onHover); connect(widget, &CardInfoPictureWithTextOverlayWidget::hoveredOnCard, this, &FlatCardGroupDisplayWidget::onHover);

View file

@ -62,7 +62,7 @@ CardInfoFrameWidget::CardInfoFrameWidget(const QString &cardName, QWidget *paren
setViewMode(SettingsCache::instance().getCardInfoViewMode()); setViewMode(SettingsCache::instance().getCardInfoViewMode());
// TODO: Change this to be by UUID // TODO: Change this to be by UUID
setCard(CardDatabaseManager::getInstance()->getCard(cardName)); setCard(CardDatabaseManager::getInstance()->getCardInfo(cardName));
} }
void CardInfoFrameWidget::retranslateUi() void CardInfoFrameWidget::retranslateUi()
@ -171,7 +171,7 @@ void CardInfoFrameWidget::setCard(const QString &cardName)
void CardInfoFrameWidget::setCard(const CardRef &cardRef) void CardInfoFrameWidget::setCard(const CardRef &cardRef)
{ {
setCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId(cardRef)); setCard(CardDatabaseManager::getInstance()->getCard(cardRef));
} }
void CardInfoFrameWidget::setCard(AbstractCardItem *card) void CardInfoFrameWidget::setCard(AbstractCardItem *card)

View file

@ -374,7 +374,7 @@ QMenu *CardInfoPictureWidget::createViewRelatedCardsMenu()
QList<CardRelation *> relatedCards = info->getAllRelatedCards(); QList<CardRelation *> relatedCards = info->getAllRelatedCards();
auto relatedCardExists = [](const CardRelation *cardRelation) { auto relatedCardExists = [](const CardRelation *cardRelation) {
return CardDatabaseManager::getInstance()->getCard(cardRelation->getName()) != nullptr; return CardDatabaseManager::getInstance()->getCardInfo(cardRelation->getName()) != nullptr;
}; };
bool atLeastOneGoodRelationFound = std::any_of(relatedCards.begin(), relatedCards.end(), relatedCardExists); bool atLeastOneGoodRelationFound = std::any_of(relatedCards.begin(), relatedCards.end(), relatedCardExists);
@ -388,7 +388,7 @@ QMenu *CardInfoPictureWidget::createViewRelatedCardsMenu()
const auto &relatedCardName = relatedCard->getName(); const auto &relatedCardName = relatedCard->getName();
QAction *viewCard = viewRelatedCards->addAction(relatedCardName); QAction *viewCard = viewRelatedCards->addAction(relatedCardName);
connect(viewCard, &QAction::triggered, this, [this, &relatedCardName] { connect(viewCard, &QAction::triggered, this, [this, &relatedCardName] {
emit cardChanged(CardDatabaseManager::getInstance()->getCard(relatedCardName)); emit cardChanged(CardDatabaseManager::getInstance()->getCardInfo(relatedCardName));
}); });
viewRelatedCards->addAction(viewCard); viewRelatedCards->addAction(viewCard);
} }

View file

@ -87,7 +87,7 @@ QHash<QString, int> ManaBaseWidget::analyzeManaBase()
continue; continue;
for (int k = 0; k < currentCard->getNumber(); ++k) { for (int k = 0; k < currentCard->getNumber(); ++k) {
CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->getName()); CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(currentCard->getName());
if (info) { if (info) {
auto devotion = determineManaProduction(info->getText()); auto devotion = determineManaProduction(info->getText());
mergeManaCounts(manaBaseMap, devotion); mergeManaCounts(manaBaseMap, devotion);

View file

@ -53,7 +53,7 @@ std::unordered_map<int, int> ManaCurveWidget::analyzeManaCurve()
continue; continue;
for (int k = 0; k < currentCard->getNumber(); ++k) { for (int k = 0; k < currentCard->getNumber(); ++k) {
CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->getName()); CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(currentCard->getName());
if (info) { if (info) {
int cmc = info->getCmc().toInt(); int cmc = info->getCmc().toInt();
manaCurveMap[cmc]++; manaCurveMap[cmc]++;

View file

@ -55,7 +55,7 @@ std::unordered_map<char, int> ManaDevotionWidget::analyzeManaDevotion()
continue; continue;
for (int k = 0; k < currentCard->getNumber(); ++k) { for (int k = 0; k < currentCard->getNumber(); ++k) {
CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->getName()); CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(currentCard->getName());
if (info) { if (info) {
auto devotion = countManaSymbols(info->getManaCost()); auto devotion = countManaSymbols(info->getManaCost());
mergeManaCounts(manaDevotionMap, devotion); mergeManaCounts(manaDevotionMap, devotion);

View file

@ -136,16 +136,16 @@ void DeckEditorDatabaseDisplayWidget::clearAllDatabaseFilters()
void DeckEditorDatabaseDisplayWidget::updateCard(const QModelIndex &current, const QModelIndex & /*previous*/) void DeckEditorDatabaseDisplayWidget::updateCard(const QModelIndex &current, const QModelIndex & /*previous*/)
{ {
const QString cardName = current.sibling(current.row(), 0).data().toString(); const QString cardName = current.sibling(current.row(), 0).data().toString();
const QString cardProviderID = CardDatabaseManager::getInstance()->getPreferredPrintingProviderIdForCard(cardName); const QString cardProviderID = CardDatabaseManager::getInstance()->getPreferredPrintingProviderId(cardName);
if (!current.isValid()) { if (!current.isValid()) {
return; return;
} }
if (!current.model()->hasChildren(current.sibling(current.row(), 0))) { if (!current.model()->hasChildren(current.sibling(current.row(), 0))) {
CardInfoPtr card = CardDatabaseManager::getInstance()->getCardByNameAndProviderId({cardName, cardProviderID}); CardInfoPtr card = CardDatabaseManager::getInstance()->getCard({cardName, cardProviderID});
if (!card) { if (!card) {
card = CardDatabaseManager::getInstance()->getCard(cardName); card = CardDatabaseManager::getInstance()->getCardInfo(cardName);
} }
emit cardChanged(card); emit cardChanged(card);
} }
@ -180,7 +180,7 @@ CardInfoPtr DeckEditorDatabaseDisplayWidget::currentCardInfo() const
const QString cardName = currentIndex.sibling(currentIndex.row(), 0).data().toString(); const QString cardName = currentIndex.sibling(currentIndex.row(), 0).data().toString();
return CardDatabaseManager::getInstance()->getCard(cardName); return CardDatabaseManager::getInstance()->getCardInfo(cardName);
} }
void DeckEditorDatabaseDisplayWidget::databaseCustomMenu(QPoint point) void DeckEditorDatabaseDisplayWidget::databaseCustomMenu(QPoint point)

View file

@ -227,8 +227,7 @@ CardInfoPtr DeckEditorDeckDockWidget::getCurrentCard()
if (!current.model()->hasChildren(current.sibling(current.row(), 0))) { if (!current.model()->hasChildren(current.sibling(current.row(), 0))) {
QString cardName = current.sibling(current.row(), 1).data().toString(); QString cardName = current.sibling(current.row(), 1).data().toString();
QString providerId = current.sibling(current.row(), 4).data().toString(); QString providerId = current.sibling(current.row(), 4).data().toString();
if (CardInfoPtr selectedCard = if (CardInfoPtr selectedCard = CardDatabaseManager::getInstance()->getCard({cardName, providerId})) {
CardDatabaseManager::getInstance()->getCardByNameAndProviderId({cardName, providerId})) {
return selectedCard; return selectedCard;
} }
} }
@ -287,8 +286,7 @@ void DeckEditorDeckDockWidget::updateBannerCardComboBox()
continue; continue;
for (int k = 0; k < currentCard->getNumber(); ++k) { for (int k = 0; k < currentCard->getNumber(); ++k) {
CardInfoPtr info = CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->toCardRef());
CardDatabaseManager::getInstance()->getCardByNameAndProviderId(currentCard->toCardRef());
if (info) { if (info) {
bannerCardSet.insert({currentCard->getName(), currentCard->getCardProviderId()}); bannerCardSet.insert({currentCard->getName(), currentCard->getCardProviderId()});
} }

View file

@ -44,8 +44,7 @@ PrintingSelectorCardOverlayWidget::PrintingSelectorCardOverlayWidget(QWidget *pa
cardInfoPicture = new CardInfoPictureWidget(this); cardInfoPicture = new CardInfoPictureWidget(this);
cardInfoPicture->setMinimumSize(0, 0); cardInfoPicture->setMinimumSize(0, 0);
cardInfoPicture->setScaleFactor(cardSizeSlider->value()); cardInfoPicture->setScaleFactor(cardSizeSlider->value());
setCard = CardDatabaseManager::getInstance()->getCardByNameAndProviderId( setCard = CardDatabaseManager::getInstance()->getCard({rootCard->getName(), _printingInfo.getProperty("uuid")});
{rootCard->getName(), _printingInfo.getProperty("uuid")});
cardInfoPicture->setCard(setCard); cardInfoPicture->setCard(setCard);
mainLayout->addWidget(cardInfoPicture); mainLayout->addWidget(cardInfoPicture);
@ -199,7 +198,7 @@ void PrintingSelectorCardOverlayWidget::customMenu(QPoint point)
const QString &relatedCardName = rel->getName(); const QString &relatedCardName = rel->getName();
QAction *relatedCard = relatedMenu->addAction(relatedCardName); QAction *relatedCard = relatedMenu->addAction(relatedCardName);
connect(relatedCard, &QAction::triggered, deckEditor, [this, relatedCardName] { connect(relatedCard, &QAction::triggered, deckEditor, [this, relatedCardName] {
deckEditor->updateCard(CardDatabaseManager::getInstance()->getCard(relatedCardName)); deckEditor->updateCard(CardDatabaseManager::getInstance()->getCardInfo(relatedCardName));
deckEditor->showPrintingSelector(); deckEditor->showPrintingSelector();
}); });
} }

View file

@ -228,12 +228,12 @@ void VisualDatabaseDisplayWidget::populateCards()
QVariant name = databaseDisplayModel->data(index, Qt::DisplayRole); QVariant name = databaseDisplayModel->data(index, Qt::DisplayRole);
qCDebug(VisualDatabaseDisplayLog) << name.toString(); qCDebug(VisualDatabaseDisplayLog) << name.toString();
if (CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(name.toString())) { if (CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(name.toString())) {
if (setFilter) { if (setFilter) {
SetToPrintingsMap setMap = info->getSets(); SetToPrintingsMap setMap = info->getSets();
if (setMap.contains(setFilter->term())) { if (setMap.contains(setFilter->term())) {
for (PrintingInfo printing : setMap[setFilter->term()]) { for (PrintingInfo printing : setMap[setFilter->term()]) {
addCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId( addCard(CardDatabaseManager::getInstance()->getCard(
{name.toString(), printing.getProperty("uuid")})); {name.toString(), printing.getProperty("uuid")}));
} }
} }
@ -294,12 +294,12 @@ void VisualDatabaseDisplayWidget::loadNextPage()
for (int row = start; row < end; ++row) { for (int row = start; row < end; ++row) {
QModelIndex index = databaseDisplayModel->index(row, CardDatabaseModel::NameColumn); QModelIndex index = databaseDisplayModel->index(row, CardDatabaseModel::NameColumn);
QVariant name = databaseDisplayModel->data(index, Qt::DisplayRole); QVariant name = databaseDisplayModel->data(index, Qt::DisplayRole);
if (CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(name.toString())) { if (CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(name.toString())) {
if (setFilter) { if (setFilter) {
SetToPrintingsMap setMap = info->getSets(); SetToPrintingsMap setMap = info->getSets();
if (setMap.contains(setFilter->term())) { if (setMap.contains(setFilter->term())) {
for (PrintingInfo printing : setMap[setFilter->term()]) { for (PrintingInfo printing : setMap[setFilter->term()]) {
addCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId( addCard(CardDatabaseManager::getInstance()->getCard(
{name.toString(), printing.getProperty("uuid")})); {name.toString(), printing.getProperty("uuid")}));
} }
} }

View file

@ -101,8 +101,7 @@ QList<CardInfoPtr> VisualDeckEditorSampleHandWidget::getRandomCards(int amountTo
continue; continue;
for (int k = 0; k < currentCard->getNumber(); ++k) { for (int k = 0; k < currentCard->getNumber(); ++k) {
CardInfoPtr info = CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->toCardRef());
CardDatabaseManager::getInstance()->getCardByNameAndProviderId(currentCard->toCardRef());
if (info) { if (info) {
mainDeckCards.append(info); mainDeckCards.append(info);
} }

View file

@ -42,7 +42,7 @@ VisualDeckEditorWidget::VisualDeckEditorWidget(QWidget *parent, DeckListModel *_
if (!searchBar->hasFocus()) if (!searchBar->hasFocus())
return; return;
CardInfoPtr card = CardDatabaseManager::getInstance()->getCard(searchBar->text()); CardInfoPtr card = CardDatabaseManager::getInstance()->getCardInfo(searchBar->text());
if (card) { if (card) {
emit cardAdditionRequested(card); emit cardAdditionRequested(card);
} }
@ -103,7 +103,7 @@ VisualDeckEditorWidget::VisualDeckEditorWidget(QWidget *parent, DeckListModel *_
// Search button functionality // Search button functionality
searchPushButton = new QPushButton(this); searchPushButton = new QPushButton(this);
connect(searchPushButton, &QPushButton::clicked, this, [=, this]() { connect(searchPushButton, &QPushButton::clicked, this, [=, this]() {
CardInfoPtr card = CardDatabaseManager::getInstance()->getCard(searchBar->text()); CardInfoPtr card = CardDatabaseManager::getInstance()->getCardInfo(searchBar->text());
if (card) { if (card) {
emit cardAdditionRequested(card); emit cardAdditionRequested(card);
} }

View file

@ -76,7 +76,7 @@ void DeckPreviewWidget::initializeUi(const bool deckLoadSuccess)
} }
auto bannerCard = deckLoader->getBannerCard().name.isEmpty() auto bannerCard = deckLoader->getBannerCard().name.isEmpty()
? CardInfoPtr() ? CardInfoPtr()
: CardDatabaseManager::getInstance()->getCardByNameAndProviderId(deckLoader->getBannerCard()); : CardDatabaseManager::getInstance()->getCard(deckLoader->getBannerCard());
bannerCardDisplayWidget->setCard(bannerCard); bannerCardDisplayWidget->setCard(bannerCard);
bannerCardDisplayWidget->setFontSize(24); bannerCardDisplayWidget->setFontSize(24);
@ -160,7 +160,7 @@ QString DeckPreviewWidget::getColorIdentity()
QSet<QChar> colorSet; // A set to collect unique color symbols (e.g., W, U, B, R, G) QSet<QChar> colorSet; // A set to collect unique color symbols (e.g., W, U, B, R, G)
for (const QString &cardName : cardList) { for (const QString &cardName : cardList) {
CardInfoPtr currentCard = CardDatabaseManager::getInstance()->getCard(cardName); CardInfoPtr currentCard = CardDatabaseManager::getInstance()->getCardInfo(cardName);
if (currentCard) { if (currentCard) {
QString colors = currentCard->getColors(); // Assuming this returns something like "WUB" QString colors = currentCard->getColors(); // Assuming this returns something like "WUB"
for (const QChar &color : colors) { for (const QChar &color : colors) {
@ -293,7 +293,7 @@ void DeckPreviewWidget::setBannerCard(int /* changedIndex */)
CardRef cardRef = {name, id}; CardRef cardRef = {name, id};
deckLoader->setBannerCard(cardRef); deckLoader->setBannerCard(cardRef);
deckLoader->saveToFile(filePath, DeckLoader::getFormatFromName(filePath)); deckLoader->saveToFile(filePath, DeckLoader::getFormatFromName(filePath));
bannerCardDisplayWidget->setCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId(cardRef)); bannerCardDisplayWidget->setCard(CardDatabaseManager::getInstance()->getCard(cardRef));
} }
void DeckPreviewWidget::imageClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance) void DeckPreviewWidget::imageClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance)

View file

@ -66,7 +66,7 @@ void DeckListModel::rebuildTree()
continue; continue;
} }
CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->getName()); CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(currentCard->getName());
QString groupCriteria = getGroupCriteriaForCard(info); QString groupCriteria = getGroupCriteriaForCard(info);
auto *groupNode = dynamic_cast<InnerDecklistNode *>(node->findChild(groupCriteria)); auto *groupNode = dynamic_cast<InnerDecklistNode *>(node->findChild(groupCriteria));
@ -337,7 +337,7 @@ DecklistModelCardNode *DeckListModel::findCardNode(const QString &cardName,
return nullptr; return nullptr;
} }
CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(cardName); CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(cardName);
if (!info) { if (!info) {
return nullptr; return nullptr;
} }
@ -375,8 +375,7 @@ QModelIndex DeckListModel::addCard(const QString &cardName,
const QString &zoneName, const QString &zoneName,
bool abAddAnyway) bool abAddAnyway)
{ {
CardInfoPtr cardInfo = CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCard({cardName, printingInfo.getProperty("uuid")});
CardDatabaseManager::getInstance()->getCardByNameAndProviderId({cardName, printingInfo.getProperty("uuid")});
if (cardInfo == nullptr) { if (cardInfo == nullptr) {
if (abAddAnyway) { if (abAddAnyway) {
@ -559,8 +558,7 @@ QList<CardInfoPtr> DeckListModel::getCardsAsCardInfoPtrs() const
if (!currentCard) if (!currentCard)
continue; continue;
for (int k = 0; k < currentCard->getNumber(); ++k) { for (int k = 0; k < currentCard->getNumber(); ++k) {
CardInfoPtr info = CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->toCardRef());
CardDatabaseManager::getInstance()->getCardByNameAndProviderId(currentCard->toCardRef());
if (info) { if (info) {
cards.append(info); cards.append(info);
} else { } else {
@ -593,8 +591,7 @@ QList<CardInfoPtr> DeckListModel::getCardsAsCardInfoPtrsForZone(QString zoneName
if (!currentCard) if (!currentCard)
continue; continue;
for (int k = 0; k < currentCard->getNumber(); ++k) { for (int k = 0; k < currentCard->getNumber(); ++k) {
CardInfoPtr info = CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(currentCard->toCardRef());
CardDatabaseManager::getInstance()->getCardByNameAndProviderId(currentCard->toCardRef());
if (info) { if (info) {
cards.append(info); cards.append(info);
} else { } else {

View file

@ -281,7 +281,7 @@ QString DeckLoader::exportDeckToDecklist(DecklistWebsite website)
// Set up the function to call // Set up the function to call
auto formatDeckListForExport = [&mainBoardCards, &sideBoardCards](const auto *node, const auto *card) { auto formatDeckListForExport = [&mainBoardCards, &sideBoardCards](const auto *node, const auto *card) {
// Get the card name // Get the card name
CardInfoPtr dbCard = CardDatabaseManager::getInstance()->getCard(card->getName()); CardInfoPtr dbCard = CardDatabaseManager::getInstance()->getCardInfo(card->getName());
if (!dbCard || dbCard->getIsToken()) { if (!dbCard || dbCard->getIsToken()) {
// If it's a token, we don't care about the card. // If it's a token, we don't care about the card.
return; return;
@ -466,7 +466,7 @@ void DeckLoader::saveToStream_DeckZone(QTextStream &out,
for (int j = 0; j < zoneNode->size(); j++) { for (int j = 0; j < zoneNode->size(); j++) {
auto *card = dynamic_cast<DecklistCardNode *>(zoneNode->at(j)); auto *card = dynamic_cast<DecklistCardNode *>(zoneNode->at(j));
CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(card->getName()); CardInfoPtr info = CardDatabaseManager::getInstance()->getCardInfo(card->getName());
QString cardType = info ? info->getMainCardType() : "unknown"; QString cardType = info ? info->getMainCardType() : "unknown";
cardsByType.insert(cardType, card); cardsByType.insert(cardType, card);
@ -582,7 +582,7 @@ bool DeckLoader::convertToCockatriceFormat(QString fileName)
QString DeckLoader::getCardZoneFromName(QString cardName, QString currentZoneName) QString DeckLoader::getCardZoneFromName(QString cardName, QString currentZoneName)
{ {
CardInfoPtr card = CardDatabaseManager::getInstance()->getCard(cardName); CardInfoPtr card = CardDatabaseManager::getInstance()->getCardInfo(cardName);
if (card && card->getIsToken()) { if (card && card->getIsToken()) {
return DECK_ZONE_TOKENS; return DECK_ZONE_TOKENS;

View file

@ -70,7 +70,7 @@ void DeckStatsInterface::analyzeDeck(DeckList *deck)
void DeckStatsInterface::copyDeckWithoutTokens(DeckList &source, DeckList &destination) void DeckStatsInterface::copyDeckWithoutTokens(DeckList &source, DeckList &destination)
{ {
auto copyIfNotAToken = [this, &destination](const auto node, const auto card) { auto copyIfNotAToken = [this, &destination](const auto node, const auto card) {
CardInfoPtr dbCard = cardDatabase.getCard(card->getName()); CardInfoPtr dbCard = cardDatabase.getCardInfo(card->getName());
if (dbCard && !dbCard->getIsToken()) { if (dbCard && !dbCard->getIsToken()) {
DecklistCardNode *addedCard = destination.addCard(card->getName(), node->getName(), -1); DecklistCardNode *addedCard = destination.addCard(card->getName(), node->getName(), -1);
addedCard->setNumber(card->getNumber()); addedCard->setNumber(card->getNumber());

View file

@ -152,7 +152,7 @@ void DlgEditTokens::actAddToken()
name = getTextWithMax(this, tr("Add token"), tr("Please enter the name of the token:")); name = getTextWithMax(this, tr("Add token"), tr("Please enter the name of the token:"));
if (name.isEmpty()) if (name.isEmpty())
return; return;
if (databaseModel->getDatabase()->getCard(name)) { if (databaseModel->getDatabase()->getCardInfo(name)) {
QMessageBox::critical(this, tr("Error"), QMessageBox::critical(this, tr("Error"),
tr("The chosen name conflicts with an existing card or token.\nMake sure to enable " tr("The chosen name conflicts with an existing card or token.\nMake sure to enable "
"the 'Token' set in the \"Manage sets\" dialog to display them correctly.")); "the 'Token' set in the \"Manage sets\" dialog to display them correctly."));

View file

@ -222,7 +222,7 @@ QMap<QString, int> DlgSelectSetForCards::getSetsForCards()
if (!currentCard) if (!currentCard)
continue; continue;
CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCard(currentCard->getName()); CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCardInfo(currentCard->getName());
if (!infoPtr) if (!infoPtr)
continue; continue;
@ -290,12 +290,12 @@ void DlgSelectSetForCards::updateCardLists()
if (!found) { if (!found) {
// The card was not in any selected set // The card was not in any selected set
CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCard(currentCard->getName()); CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCardInfo(currentCard->getName());
CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(uneditedCardsFlowWidget); CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(uneditedCardsFlowWidget);
picture_widget->setCard(infoPtr); picture_widget->setCard(infoPtr);
uneditedCardsFlowWidget->addWidget(picture_widget); uneditedCardsFlowWidget->addWidget(picture_widget);
} else { } else {
CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCardByNameAndProviderId( CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCard(
{currentCard->getName(), CardDatabaseManager::getInstance() {currentCard->getName(), CardDatabaseManager::getInstance()
->getSpecificPrinting(currentCard->getName(), foundSetName, "") ->getSpecificPrinting(currentCard->getName(), foundSetName, "")
.getProperty("uuid")}); .getProperty("uuid")});
@ -376,7 +376,7 @@ QMap<QString, QStringList> DlgSelectSetForCards::getCardsForSets()
if (!currentCard) if (!currentCard)
continue; continue;
CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCard(currentCard->getName()); CardInfoPtr infoPtr = CardDatabaseManager::getInstance()->getCardInfo(currentCard->getName());
if (!infoPtr) if (!infoPtr)
continue; continue;
@ -628,7 +628,7 @@ void SetEntryWidget::updateCardDisplayWidgets()
CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(cardListContainer); CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(cardListContainer);
QString providerId = QString providerId =
CardDatabaseManager::getInstance()->getSpecificPrinting(cardName, setName, nullptr).getProperty("uuid"); CardDatabaseManager::getInstance()->getSpecificPrinting(cardName, setName, nullptr).getProperty("uuid");
picture_widget->setCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId({cardName, providerId})); picture_widget->setCard(CardDatabaseManager::getInstance()->getCard({cardName, providerId}));
cardListContainer->addWidget(picture_widget); cardListContainer->addWidget(picture_widget);
} }
@ -636,7 +636,7 @@ void SetEntryWidget::updateCardDisplayWidgets()
CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(alreadySelectedCardListContainer); CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(alreadySelectedCardListContainer);
QString providerId = QString providerId =
CardDatabaseManager::getInstance()->getSpecificPrinting(cardName, setName, nullptr).getProperty("uuid"); CardDatabaseManager::getInstance()->getSpecificPrinting(cardName, setName, nullptr).getProperty("uuid");
picture_widget->setCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId({cardName, providerId})); picture_widget->setCard(CardDatabaseManager::getInstance()->getCard({cardName, providerId}));
alreadySelectedCardListContainer->addWidget(picture_widget); alreadySelectedCardListContainer->addWidget(picture_widget);
} }
} }

View file

@ -57,7 +57,7 @@ void AbstractCardItem::pixmapUpdated()
void AbstractCardItem::refreshCardInfo() void AbstractCardItem::refreshCardInfo()
{ {
info = CardDatabaseManager::getInstance()->getCardByNameAndProviderId(cardRef); info = CardDatabaseManager::getInstance()->getCard(cardRef);
if (!info && !cardRef.name.isEmpty()) { if (!info && !cardRef.name.isEmpty()) {
QVariantHash properties = QVariantHash(); QVariantHash properties = QVariantHash();

View file

@ -109,12 +109,12 @@ void CardDatabase::removeCard(CardInfoPtr card)
emit cardRemoved(card); emit cardRemoved(card);
} }
CardInfoPtr CardDatabase::getCard(const QString &cardName) const CardInfoPtr CardDatabase::getCardInfo(const QString &cardName) const
{ {
return cards.value(cardName); return cards.value(cardName);
} }
QList<CardInfoPtr> CardDatabase::getCards(const QStringList &cardNames) const QList<CardInfoPtr> CardDatabase::getCardInfos(const QStringList &cardNames) const
{ {
QList<CardInfoPtr> cardInfos; QList<CardInfoPtr> cardInfos;
for (const QString &cardName : cardNames) { for (const QString &cardName : cardNames) {
@ -126,11 +126,11 @@ QList<CardInfoPtr> CardDatabase::getCards(const QStringList &cardNames) const
return cardInfos; return cardInfos;
} }
QList<CardInfoPtr> CardDatabase::getCardsByNameAndProviderId(const QList<CardRef> &cardRefs) const QList<CardInfoPtr> CardDatabase::getCards(const QList<CardRef> &cardRefs) const
{ {
QList<CardInfoPtr> cardInfos; QList<CardInfoPtr> cardInfos;
for (const auto &cardRef : cardRefs) { for (const auto &cardRef : cardRefs) {
CardInfoPtr ptr = getCardByNameAndProviderId(cardRef); CardInfoPtr ptr = getCard(cardRef);
if (ptr) if (ptr)
cardInfos.append(ptr); cardInfos.append(ptr);
} }
@ -138,9 +138,9 @@ QList<CardInfoPtr> CardDatabase::getCardsByNameAndProviderId(const QList<CardRef
return cardInfos; return cardInfos;
} }
CardInfoPtr CardDatabase::getCardByNameAndProviderId(const CardRef &cardRef) const CardInfoPtr CardDatabase::getCard(const CardRef &cardRef) const
{ {
auto info = getCard(cardRef.name); auto info = getCardInfo(cardRef.name);
if (cardRef.providerId.isNull() || cardRef.providerId.isEmpty() || info.isNull()) { if (cardRef.providerId.isNull() || cardRef.providerId.isEmpty() || info.isNull()) {
return info; return info;
} }
@ -165,7 +165,7 @@ CardInfoPtr CardDatabase::getCardBySimpleName(const QString &cardName) const
CardInfoPtr CardDatabase::guessCard(const CardRef &cardRef) const CardInfoPtr CardDatabase::guessCard(const CardRef &cardRef) const
{ {
CardInfoPtr temp = cardRef.providerId.isEmpty() ? getCard(cardRef.name) : getCardByNameAndProviderId(cardRef); CardInfoPtr temp = cardRef.providerId.isEmpty() ? getCardInfo(cardRef.name) : getCard(cardRef);
if (temp == nullptr) { // get card by simple name instead if (temp == nullptr) { // get card by simple name instead
temp = getCardBySimpleName(cardRef.name); temp = getCardBySimpleName(cardRef.name);
@ -293,13 +293,13 @@ void CardDatabase::refreshPreferredPrintings()
{ {
for (const CardInfoPtr &card : cards) { for (const CardInfoPtr &card : cards) {
card->setPixmapCacheKey(QLatin1String("card_") + QString(card->getName()) + QString("_") + card->setPixmapCacheKey(QLatin1String("card_") + QString(card->getName()) + QString("_") +
QString(getPreferredPrintingProviderIdForCard(card->getName()))); QString(getPreferredPrintingProviderId(card->getName())));
} }
} }
PrintingInfo CardDatabase::getPreferredPrinting(const QString &cardName) const PrintingInfo CardDatabase::getPreferredPrinting(const QString &cardName) const
{ {
CardInfoPtr cardInfo = getCard(cardName); CardInfoPtr cardInfo = getCardInfo(cardName);
return getPreferredPrinting(cardInfo); return getPreferredPrinting(cardInfo);
} }
@ -337,7 +337,7 @@ PrintingInfo CardDatabase::getPreferredPrinting(const CardInfoPtr &cardInfo) con
PrintingInfo CardDatabase::getSpecificPrinting(const CardRef &cardRef) const PrintingInfo CardDatabase::getSpecificPrinting(const CardRef &cardRef) const
{ {
CardInfoPtr cardInfo = getCard(cardRef.name); CardInfoPtr cardInfo = getCardInfo(cardRef.name);
if (!cardInfo) { if (!cardInfo) {
return PrintingInfo(nullptr); return PrintingInfo(nullptr);
} }
@ -366,7 +366,7 @@ PrintingInfo CardDatabase::getSpecificPrinting(const QString &cardName,
const QString &setShortName, const QString &setShortName,
const QString &collectorNumber) const const QString &collectorNumber) const
{ {
CardInfoPtr cardInfo = getCard(cardName); CardInfoPtr cardInfo = getCardInfo(cardName);
if (!cardInfo) { if (!cardInfo) {
return PrintingInfo(nullptr); return PrintingInfo(nullptr);
} }
@ -394,7 +394,7 @@ PrintingInfo CardDatabase::getSpecificPrinting(const QString &cardName,
return PrintingInfo(nullptr); return PrintingInfo(nullptr);
} }
QString CardDatabase::getPreferredPrintingProviderIdForCard(const QString &cardName) QString CardDatabase::getPreferredPrintingProviderId(const QString &cardName)
{ {
PrintingInfo preferredPrinting = getPreferredPrinting(cardName); PrintingInfo preferredPrinting = getPreferredPrinting(cardName);
QString uuid = preferredPrinting.getProperty("uuid"); QString uuid = preferredPrinting.getProperty("uuid");
@ -402,20 +402,20 @@ QString CardDatabase::getPreferredPrintingProviderIdForCard(const QString &cardN
return uuid; return uuid;
} }
CardInfoPtr defaultCardInfo = getCard(cardName); CardInfoPtr defaultCardInfo = getCardInfo(cardName);
if (defaultCardInfo.isNull()) { if (defaultCardInfo.isNull()) {
return cardName; return cardName;
} }
return defaultCardInfo->getName(); return defaultCardInfo->getName();
} }
bool CardDatabase::isProviderIdForPreferredPrinting(const CardRef &cardRef) bool CardDatabase::isPreferredPrinting(const CardRef &cardRef)
{ {
if (cardRef.providerId.startsWith("card_")) { if (cardRef.providerId.startsWith("card_")) {
return cardRef.providerId == QLatin1String("card_") + cardRef.name + QString("_") + return cardRef.providerId ==
getPreferredPrintingProviderIdForCard(cardRef.name); QLatin1String("card_") + cardRef.name + QString("_") + getPreferredPrintingProviderId(cardRef.name);
} }
return cardRef.providerId == getPreferredPrintingProviderIdForCard(cardRef.name); return cardRef.providerId == getPreferredPrintingProviderId(cardRef.name);
} }
PrintingInfo CardDatabase::getSetInfoForCard(const CardInfoPtr &_card) PrintingInfo CardDatabase::getSetInfoForCard(const CardInfoPtr &_card)

View file

@ -66,18 +66,19 @@ public:
void clear(); void clear();
void removeCard(CardInfoPtr card); void removeCard(CardInfoPtr card);
[[nodiscard]] CardInfoPtr getCard(const QString &cardName) const; [[nodiscard]] CardInfoPtr getCardInfo(const QString &cardName) const;
[[nodiscard]] QList<CardInfoPtr> getCards(const QStringList &cardNames) const; [[nodiscard]] QList<CardInfoPtr> getCardInfos(const QStringList &cardNames) const;
QList<CardInfoPtr> getCardsByNameAndProviderId(const QList<CardRef> &cardRefs) const;
[[nodiscard]] CardInfoPtr getCardByNameAndProviderId(const CardRef &cardRef) const; QList<CardInfoPtr> getCards(const QList<CardRef> &cardRefs) const;
[[nodiscard]] CardInfoPtr getCard(const CardRef &cardRef) const;
[[nodiscard]] PrintingInfo getPreferredPrinting(const QString &cardName) const; [[nodiscard]] PrintingInfo getPreferredPrinting(const QString &cardName) const;
[[nodiscard]] PrintingInfo getPreferredPrinting(const CardInfoPtr &cardInfo) const; [[nodiscard]] PrintingInfo getPreferredPrinting(const CardInfoPtr &cardInfo) const;
[[nodiscard]] PrintingInfo getSpecificPrinting(const CardRef &cardRef) const; [[nodiscard]] PrintingInfo getSpecificPrinting(const CardRef &cardRef) const;
PrintingInfo PrintingInfo
getSpecificPrinting(const QString &cardName, const QString &setShortName, const QString &collectorNumber) const; getSpecificPrinting(const QString &cardName, const QString &setShortName, const QString &collectorNumber) const;
QString getPreferredPrintingProviderIdForCard(const QString &cardName); QString getPreferredPrintingProviderId(const QString &cardName);
bool isProviderIdForPreferredPrinting(const CardRef &cardRef); bool isPreferredPrinting(const CardRef &cardRef);
[[nodiscard]] CardInfoPtr guessCard(const CardRef &cardRef) const; [[nodiscard]] CardInfoPtr guessCard(const CardRef &cardRef) const;

View file

@ -332,8 +332,7 @@ void DeckViewContainer::deckSelectFinished(const Response &r)
{ {
const Response_DeckDownload &resp = r.GetExtension(Response_DeckDownload::ext); const Response_DeckDownload &resp = r.GetExtension(Response_DeckDownload::ext);
DeckLoader newDeck(QString::fromStdString(resp.deck())); DeckLoader newDeck(QString::fromStdString(resp.deck()));
PictureLoader::cacheCardPixmaps( PictureLoader::cacheCardPixmaps(CardDatabaseManager::getInstance()->getCards(newDeck.getCardRefList()));
CardDatabaseManager::getInstance()->getCardsByNameAndProviderId(newDeck.getCardRefList()));
setDeck(newDeck); setDeck(newDeck);
switchToDeckLoadedView(); switchToDeckLoadedView();
} }

View file

@ -118,7 +118,7 @@ static void setupParserRules()
return [=](const DeckPreviewWidget *deck, const ExtraDeckSearchInfo &) -> bool { return [=](const DeckPreviewWidget *deck, const ExtraDeckSearchInfo &) -> bool {
int count = 0; int count = 0;
deck->deckLoader->forEachCard([&](InnerDecklistNode *, const DecklistCardNode *node) { deck->deckLoader->forEachCard([&](InnerDecklistNode *, const DecklistCardNode *node) {
auto cardInfoPtr = CardDatabaseManager::getInstance()->getCard(node->getName()); auto cardInfoPtr = CardDatabaseManager::getInstance()->getCardInfo(node->getName());
if (!cardInfoPtr.isNull() && cardFilter.check(cardInfoPtr)) { if (!cardInfoPtr.isNull() && cardFilter.check(cardInfoPtr)) {
count += node->getNumber(); count += node->getNumber();
} }

View file

@ -1886,7 +1886,7 @@ void Player::actCreateAnotherToken()
void Player::actCreatePredefinedToken() void Player::actCreatePredefinedToken()
{ {
auto *action = static_cast<QAction *>(sender()); auto *action = static_cast<QAction *>(sender());
CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCard(action->text()); CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCardInfo(action->text());
if (!cardInfo) { if (!cardInfo) {
return; return;
} }
@ -1912,8 +1912,8 @@ void Player::actCreateRelatedCard()
* then let's allow it to be created via "create another token" * then let's allow it to be created via "create another token"
*/ */
if (createRelatedFromRelation(sourceCard, cardRelation) && cardRelation->getCanCreateAnother()) { if (createRelatedFromRelation(sourceCard, cardRelation) && cardRelation->getCanCreateAnother()) {
CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCardByNameAndProviderId( CardInfoPtr cardInfo =
{cardRelation->getName(), sourceCard->getProviderId()}); CardDatabaseManager::getInstance()->getCard({cardRelation->getName(), sourceCard->getProviderId()});
setLastToken(cardInfo); setLastToken(cardInfo);
} }
} }
@ -1993,7 +1993,7 @@ void Player::actCreateAllRelatedCards()
* then assign the first to the "Create another" shortcut. * then assign the first to the "Create another" shortcut.
*/ */
if (cardRelation != nullptr && cardRelation->getCanCreateAnother()) { if (cardRelation != nullptr && cardRelation->getCanCreateAnother()) {
CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCard(cardRelation->getName()); CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCardInfo(cardRelation->getName());
setLastToken(cardInfo); setLastToken(cardInfo);
} }
} }
@ -2040,7 +2040,7 @@ void Player::createCard(const CardItem *sourceCard,
CardRelation::AttachType attachType, CardRelation::AttachType attachType,
bool persistent) bool persistent)
{ {
CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCard(dbCardName); CardInfoPtr cardInfo = CardDatabaseManager::getInstance()->getCardInfo(dbCardName);
if (cardInfo == nullptr || sourceCard == nullptr) { if (cardInfo == nullptr || sourceCard == nullptr) {
return; return;
@ -4076,7 +4076,7 @@ void Player::addRelatedCardView(const CardItem *card, QMenu *cardMenu)
bool atLeastOneGoodRelationFound = false; bool atLeastOneGoodRelationFound = false;
QList<CardRelation *> relatedCards = cardInfo->getAllRelatedCards(); QList<CardRelation *> relatedCards = cardInfo->getAllRelatedCards();
for (const CardRelation *cardRelation : relatedCards) { for (const CardRelation *cardRelation : relatedCards) {
CardInfoPtr relatedCard = CardDatabaseManager::getInstance()->getCard(cardRelation->getName()); CardInfoPtr relatedCard = CardDatabaseManager::getInstance()->getCardInfo(cardRelation->getName());
if (relatedCard != nullptr) { if (relatedCard != nullptr) {
atLeastOneGoodRelationFound = true; atLeastOneGoodRelationFound = true;
break; break;
@ -4122,10 +4122,10 @@ void Player::addRelatedCardActions(const CardItem *card, QMenu *cardMenu)
int index = 0; int index = 0;
QAction *createRelatedCards = nullptr; QAction *createRelatedCards = nullptr;
for (const CardRelation *cardRelation : relatedCards) { for (const CardRelation *cardRelation : relatedCards) {
CardInfoPtr relatedCard = CardDatabaseManager::getInstance()->getCardByNameAndProviderId( CardInfoPtr relatedCard =
{cardRelation->getName(), currentCardSet.getProperty("uuid")}); CardDatabaseManager::getInstance()->getCard({cardRelation->getName(), currentCardSet.getProperty("uuid")});
if (relatedCard == nullptr) { if (relatedCard == nullptr) {
relatedCard = CardDatabaseManager::getInstance()->getCard(cardRelation->getName()); relatedCard = CardDatabaseManager::getInstance()->getCardInfo(cardRelation->getName());
} }
if (relatedCard == nullptr) { if (relatedCard == nullptr) {
continue; continue;