diff --git a/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp b/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp index 22be120c4..fa957e9d0 100644 --- a/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp +++ b/cockatrice/src/client/network/interfaces/deck_stats_interface.cpp @@ -108,7 +108,7 @@ void DeckStatsInterface::analyzeDeck(const DeckList &deck) void DeckStatsInterface::copyDeckWithoutTokens(const DeckList &source, DeckList &destination) { auto copyIfNotAToken = [&destination](const auto node, const auto card) { - CardInfoPtr dbCard = CardDatabaseManager::query()->getCardInfo(card->getName()); + CardInfoPtr dbCard = CardDatabaseManager::query().getCardInfo(card->getName()); // Missing local card data is not evidence that a card is a token. Keep // its original name and quantity so the service analyzes the whole deck. if ((!dbCard || !dbCard->getIsToken()) && node->getName() != DECK_ZONE_MAYBEBOARD) { diff --git a/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp b/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp index a57877b6a..95b863b74 100644 --- a/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp +++ b/cockatrice/src/client/network/interfaces/tapped_out_interface.cpp @@ -128,7 +128,7 @@ void TappedOutInterface::analyzeDeck(const DeckList &deck) void TappedOutInterface::copyDeckSplitMainAndSide(const DeckList &source, DeckList &mainboard, DeckList &sideboard) { auto copyMainOrSide = [&mainboard, &sideboard](const auto node, const auto card) { - CardInfoPtr dbCard = CardDatabaseManager::query()->getCardInfo(card->getName()); + CardInfoPtr dbCard = CardDatabaseManager::query().getCardInfo(card->getName()); // Exclude confirmed tokens, but preserve cards missing from the local // database, including newly released cards in an imported deck. if ((dbCard && dbCard->getIsToken()) || node->getName() == DECK_ZONE_MAYBEBOARD) { diff --git a/cockatrice/src/filters/deck_filter_string.cpp b/cockatrice/src/filters/deck_filter_string.cpp index f0df897fc..4719abb3c 100644 --- a/cockatrice/src/filters/deck_filter_string.cpp +++ b/cockatrice/src/filters/deck_filter_string.cpp @@ -147,7 +147,7 @@ static void setupParserRules() int count = 0; auto cardNodes = data.deck->deckList.getCardNodes(); for (auto node : cardNodes) { - auto cardInfoPtr = CardDatabaseManager::query()->getCardInfo(node->getName()); + auto cardInfoPtr = CardDatabaseManager::query().getCardInfo(node->getName()); if (!cardInfoPtr.isNull() && cardFilter.check(cardInfoPtr)) { count += node->getNumber(); } diff --git a/cockatrice/src/game_graphics/deckview/deck_view_container.cpp b/cockatrice/src/game_graphics/deckview/deck_view_container.cpp index fe63d7a6f..6cb8374b6 100644 --- a/cockatrice/src/game_graphics/deckview/deck_view_container.cpp +++ b/cockatrice/src/game_graphics/deckview/deck_view_container.cpp @@ -413,7 +413,7 @@ void DeckViewContainer::deckSelectFinished(const Response &r) { const Response_DeckDownload &resp = r.GetExtension(Response_DeckDownload::ext); DeckList newDeck = DeckList(QString::fromStdString(resp.deck())); - CardPictureLoader::cacheCardPixmaps(CardDatabaseManager::query()->getCards(newDeck.getCardRefList())); + CardPictureLoader::cacheCardPixmaps(CardDatabaseManager::query().getCards(newDeck.getCardRefList())); setDeck(newDeck); switchToDeckLoadedView(); } diff --git a/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp b/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp index 5ce050380..2dfb50a13 100644 --- a/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp +++ b/cockatrice/src/game_graphics/dialogs/dlg_create_token.cpp @@ -223,7 +223,7 @@ void DlgCreateToken::tokenSelectionChanged(const QModelIndex ¤t, const QMo annotationEdit->setText(""); } - pic->setCard(CardDatabaseManager::query()->getPreferredCard(cardInfo)); + pic->setCard(CardDatabaseManager::query().getPreferredCard(cardInfo)); } void DlgCreateToken::updateSearchFieldWithoutUpdatingFilter(const QString &newValue) const diff --git a/cockatrice/src/game_graphics/player/menu/card_menu.cpp b/cockatrice/src/game_graphics/player/menu/card_menu.cpp index 4f3520814..ded63e771 100644 --- a/cockatrice/src/game_graphics/player/menu/card_menu.cpp +++ b/cockatrice/src/game_graphics/player/menu/card_menu.cpp @@ -403,7 +403,7 @@ void CardMenu::addRelatedCardView() bool atLeastOneGoodRelationFound = false; QList relatedCards = exactCard.getInfo().getAllRelatedCards(); for (const CardRelation *cardRelation : relatedCards) { - CardInfoPtr relatedCard = CardDatabaseManager::query()->getCardInfo(cardRelation->getName()); + CardInfoPtr relatedCard = CardDatabaseManager::query().getCardInfo(cardRelation->getName()); if (relatedCard != nullptr) { atLeastOneGoodRelationFound = true; break; @@ -448,9 +448,9 @@ void CardMenu::addRelatedCardActions() QAction *createRelatedCards = nullptr; for (const CardRelation *cardRelation : relatedCards) { ExactCard relatedCard = - CardDatabaseManager::query()->getCardFromSameSet(cardRelation->getName(), card->getCard().getPrinting()); + CardDatabaseManager::query().getCardFromSameSet(cardRelation->getName(), card->getCard().getPrinting()); if (!relatedCard) { - relatedCard = CardDatabaseManager::query()->getCard({cardRelation->getName()}); + relatedCard = CardDatabaseManager::query().getCard({cardRelation->getName()}); } if (!relatedCard) { continue; diff --git a/cockatrice/src/game_graphics/player/player_graphics_item.cpp b/cockatrice/src/game_graphics/player/player_graphics_item.cpp index 0805dbb5b..f1aa14418 100644 --- a/cockatrice/src/game_graphics/player/player_graphics_item.cpp +++ b/cockatrice/src/game_graphics/player/player_graphics_item.cpp @@ -461,7 +461,7 @@ void PlayerGraphicsItem::updatePlaymat() playmatParams = params; scaledPlaymatKey = QSize(); // the art crop depends on the params, drop any cached scale - ExactCard card = CardDatabaseManager::query()->getCard(playmatCard); + ExactCard card = CardDatabaseManager::query().getCard(playmatCard); if (!card) { clearPlaymat(); return; diff --git a/cockatrice/src/interface/card_localization.h b/cockatrice/src/interface/card_localization.h index 39cbd7700..a8c595e84 100644 --- a/cockatrice/src/interface/card_localization.h +++ b/cockatrice/src/interface/card_localization.h @@ -72,7 +72,7 @@ inline QString displayNameFor(const QString &cardName) if (cardName.isEmpty()) { return cardName; } - const QString localizedName = displayName(CardDatabaseManager::query()->getCardInfo(cardName)); + const QString localizedName = displayName(CardDatabaseManager::query().getCardInfo(cardName)); return localizedName.isEmpty() ? cardName : localizedName; } } // namespace CardLocalization diff --git a/cockatrice/src/interface/deck_loader/card_node_function.cpp b/cockatrice/src/interface/deck_loader/card_node_function.cpp index 8d59a6c15..88ece3626 100644 --- a/cockatrice/src/interface/deck_loader/card_node_function.cpp +++ b/cockatrice/src/interface/deck_loader/card_node_function.cpp @@ -14,7 +14,7 @@ void CardNodeFunction::SetProviderIdToPreferred::operator()(const InnerDecklistNode *node, DecklistCardNode *card) const { Q_UNUSED(node); - PrintingInfo preferredPrinting = CardDatabaseManager::query()->getPreferredPrinting(card->getName()); + PrintingInfo preferredPrinting = CardDatabaseManager::query().getPreferredPrinting(card->getName()); CardSetPtr preferredSet = preferredPrinting.getSet(); if (!preferredSet) { return; @@ -40,7 +40,7 @@ void CardNodeFunction::ResolveProviderId::operator()(const InnerDecklistNode *no QString providerId = CardDatabaseManager::getInstance() ->query() - ->getSpecificPrinting(card->getName(), card->getCardSetShortName(), card->getCardCollectorNumber()) + .getSpecificPrinting(card->getName(), card->getCardSetShortName(), card->getCardCollectorNumber()) .getUuid(); // Set the providerId on the card diff --git a/cockatrice/src/interface/deck_loader/deck_loader.cpp b/cockatrice/src/interface/deck_loader/deck_loader.cpp index c8fa2a6f8..4d833914f 100644 --- a/cockatrice/src/interface/deck_loader/deck_loader.cpp +++ b/cockatrice/src/interface/deck_loader/deck_loader.cpp @@ -433,7 +433,7 @@ void DeckLoader::saveToStream_DeckZone(QTextStream &out, continue; } - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(card->getName()); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(card->getName()); QString cardType = info ? info->getMainCardType() : "unknown"; cardsByType.insert(cardType, card); diff --git a/cockatrice/src/interface/intents/url_parser.cpp b/cockatrice/src/interface/intents/url_parser.cpp index e0b7bb2fb..c9224c2aa 100644 --- a/cockatrice/src/interface/intents/url_parser.cpp +++ b/cockatrice/src/interface/intents/url_parser.cpp @@ -264,7 +264,7 @@ Intent *IntentUrlParser::createOpenDeckIntent(const QUrlQuery &query, PendingInt // The open deck intent owns the context and the credential lookup; once // the chain finishes (or fails) it deletes the whole tree. auto openDeckIntent = - new IntentOpenSharedDeck(mainWindow->getTabSupervisor(), client, CardDatabaseManager::query(), std::move(ctx)); + new IntentOpenSharedDeck(mainWindow->getTabSupervisor(), client, &CardDatabaseManager::query(), std::move(ctx)); openDeckIntent->setParent(this); chain.intents.append(openDeckIntent); connect(openDeckIntent, &Intent::failed, this, [showError](const QString &reason) { showError(reason); }); diff --git a/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp b/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp index 13c185a79..d65794bd9 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp +++ b/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.cpp @@ -10,7 +10,7 @@ #include #include -QString getDeckColorIdentity(const DeckList &deck, const CardDatabaseQuerier *db) +QString getDeckColorIdentity(const DeckList &deck, const CardDatabaseQuerier &db) { const QStringList cardList = deck.getCardList({DECK_ZONE_MAIN, DECK_ZONE_SIDE}); if (cardList.isEmpty()) { @@ -20,7 +20,7 @@ QString getDeckColorIdentity(const DeckList &deck, const CardDatabaseQuerier *db QSet colorSet; // A set to collect unique color symbols (e.g., W, U, B, R, G) for (const QString &cardName : cardList) { - CardInfoPtr currentCard = db->getCardInfo(cardName); + CardInfoPtr currentCard = db.getCardInfo(cardName); if (currentCard) { const QString colors = currentCard->getColors(); // returns something like "WUB" for (const QChar &color : colors) { diff --git a/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.h b/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.h index 04294cb1c..e79edb14a 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.h +++ b/cockatrice/src/interface/widgets/cards/additional_info/deck_color_identity.h @@ -15,6 +15,6 @@ class DeckList; * * @param db Card database used to look up card color symbols. */ -QString getDeckColorIdentity(const DeckList &deck, const CardDatabaseQuerier *db); +QString getDeckColorIdentity(const DeckList &deck, const CardDatabaseQuerier &db); #endif // COCKATRICE_DECK_COLOR_IDENTITY_H diff --git a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp index b15ac5d23..d1eeda777 100644 --- a/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_group_display_widgets/card_group_display_widget.cpp @@ -172,7 +172,7 @@ QWidget *CardGroupDisplayWidget::constructWidgetForIndex(QPersistentModelIndex i auto widget = new CardInfoPictureWithTextOverlayWidget(getLayoutParent(), true); widget->setScaleFactor(cardSizeWidget->getSlider()->value()); - widget->setCard(CardDatabaseManager::query()->getCard({cardName, cardProviderId})); + widget->setCard(CardDatabaseManager::query().getCard({cardName, cardProviderId})); connect(widget, &CardInfoPictureWithTextOverlayWidget::cardClicked, this, &CardGroupDisplayWidget::cardClicked); connect(widget, &CardInfoPictureWithTextOverlayWidget::hoveredOnCard, this, &CardGroupDisplayWidget::cardHovered); diff --git a/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp index 038f08612..0d3d8e785 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_display_widget.cpp @@ -68,7 +68,7 @@ void CardInfoDisplayWidget::setCard(const ExactCard &card) void CardInfoDisplayWidget::setCard(const CardRef &cardRef) { - setCard(CardDatabaseManager::query()->guessCard(cardRef)); + setCard(CardDatabaseManager::query().guessCard(cardRef)); if (exactCard.isEmpty()) { text->setInvalidCardName(cardRef.name); } diff --git a/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp index 80bc4b9d0..1287aa31e 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_frame_widget.cpp @@ -170,12 +170,12 @@ void CardInfoFrameWidget::setCard(const ExactCard &card) void CardInfoFrameWidget::setCard(const QString &cardName) { - setCard(CardDatabaseManager::query()->guessCard({cardName})); + setCard(CardDatabaseManager::query().guessCard({cardName})); } void CardInfoFrameWidget::setCard(const CardRef &cardRef) { - setCard(CardDatabaseManager::query()->getCard(cardRef)); + setCard(CardDatabaseManager::query().getCard(cardRef)); } void CardInfoFrameWidget::setCard(AbstractCardItem *card) diff --git a/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp b/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp index 8f02ebcde..c0807ff28 100644 --- a/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/card_info_picture_widget.cpp @@ -398,7 +398,7 @@ QMenu *CardInfoPictureWidget::createViewRelatedCardsMenu() QList relatedCards = exactCard.getInfo().getAllRelatedCards(); auto relatedCardExists = [](const CardRelation *cardRelation) { - return CardDatabaseManager::query()->getCardInfo(cardRelation->getName()) != nullptr; + return CardDatabaseManager::query().getCardInfo(cardRelation->getName()) != nullptr; }; bool atLeastOneGoodRelationFound = std::any_of(relatedCards.begin(), relatedCards.end(), relatedCardExists); @@ -413,7 +413,7 @@ QMenu *CardInfoPictureWidget::createViewRelatedCardsMenu() QAction *viewCard = viewRelatedCards->addAction(relatedCardName); connect(viewCard, &QAction::triggered, this, [this, &relatedCardName] { emit cardChanged( - CardDatabaseManager::query()->getCard({relatedCardName, exactCard.getPrinting().getUuid()})); + CardDatabaseManager::query().getCard({relatedCardName, exactCard.getPrinting().getUuid()})); }); viewRelatedCards->addAction(viewCard); } diff --git a/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp b/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp index 3ec2053b1..94c6e9c70 100644 --- a/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp +++ b/cockatrice/src/interface/widgets/cards/deck_card_zone_display_widget.cpp @@ -263,7 +263,7 @@ QList DeckCardZoneDisplayWidget::getGroupCriteriaValueList() QList nodes = deckListModel->getCardNodesForZone(zoneName); for (auto node : nodes) { - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(node->getName()); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(node->getName()); if (info) { groupCriteriaValues.append(info->getProperty(activeGroupCriteria)); } diff --git a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp index 90d9f58ef..4697d9edb 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/analyzer_modules/draw_probability/draw_probability_widget.cpp @@ -189,7 +189,7 @@ void DrawProbabilityWidget::updateFilterOptions() const auto nodes = analyzer->getModel()->getCardNodes(); for (auto *node : nodes) { - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(node->getName()); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(node->getName()); if (!info) { continue; } diff --git a/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp b/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp index c2f70759e..66041cc58 100644 --- a/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp +++ b/cockatrice/src/interface/widgets/deck_analytics/deck_list_statistics_analyzer.cpp @@ -36,7 +36,7 @@ void DeckListStatisticsAnalyzer::analyze() } for (auto node : nodes) { - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(node->getName()); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(node->getName()); if (!info) { continue; } diff --git a/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp b/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp index e8f6398f7..81b6b30b0 100644 --- a/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/card_database_view.cpp @@ -150,7 +150,7 @@ void CardDatabaseView::saveDbHeaderState() void CardDatabaseView::openCustomMenu(QPoint point) { - CardInfoPtr card = CardDatabaseManager::query()->getCardInfo(currentCardName()); + CardInfoPtr card = CardDatabaseManager::query().getCardInfo(currentCardName()); if (!card) { return; diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp index f25e6c0ff..d98c3ecbf 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.cpp @@ -125,19 +125,19 @@ void DeckEditorDatabaseDisplayWidget::actAddCardToSideboard() void DeckEditorDatabaseDisplayWidget::addCard(const QString &cardName, const QString &zoneName) { highlightAllSearchEdit(); - ExactCard exactCard = CardDatabaseManager::query()->getPreferredCard(cardName); + ExactCard exactCard = CardDatabaseManager::query().getPreferredCard(cardName); emit cardAdded(exactCard, zoneName); } void DeckEditorDatabaseDisplayWidget::decrementCard(const QString &cardName, const QString &zoneName) { - ExactCard exactCard = CardDatabaseManager::query()->getPreferredCard(cardName); + ExactCard exactCard = CardDatabaseManager::query().getPreferredCard(cardName); emit cardDecremented(exactCard, zoneName); } void DeckEditorDatabaseDisplayWidget::updateCard(const QString &cardName) { - ExactCard exactCard = CardDatabaseManager::query()->getPreferredCard(cardName); + ExactCard exactCard = CardDatabaseManager::query().getPreferredCard(cardName); emit cardChanged(exactCard); } @@ -159,6 +159,6 @@ void DeckEditorDatabaseDisplayWidget::highlightAllSearchEdit() void DeckEditorDatabaseDisplayWidget::onRelatedCardClicked(const QString &relatedCard) { - ExactCard exactCard = CardDatabaseManager::query()->guessCard({relatedCard}); + ExactCard exactCard = CardDatabaseManager::query().guessCard({relatedCard}); emit cardInfoRequested(exactCard); } \ No newline at end of file diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp index 47d2a1aae..e29bca669 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.cpp @@ -361,7 +361,7 @@ void DeckEditorDeckDockWidget::createDeckDock() void DeckEditorDeckDockWidget::initializeFormats() { - QStringList allFormats = CardDatabaseManager::query()->getAllFormatsWithCount().keys(); + QStringList allFormats = CardDatabaseManager::query().getAllFormatsWithCount().keys(); // Rebuilding the list is a view update, not a user edit. In particular, // clear() emits currentIndexChanged(-1), which must not clear the deck. @@ -413,7 +413,7 @@ ExactCard DeckEditorDeckDockWidget::getCurrentCard() const QString zoneName = gparent.siblingAtColumn(DeckListModelColumns::CARD_NAME).data(Qt::EditRole).toString(); if (!current.model()->hasChildren(current.siblingAtColumn(DeckListModelColumns::CARD_AMOUNT))) { - if (ExactCard selectedCard = CardDatabaseManager::query()->getCard({cardName, cardProviderID})) { + if (ExactCard selectedCard = CardDatabaseManager::query().getCard({cardName, cardProviderID})) { return selectedCard; } } @@ -466,7 +466,7 @@ void DeckEditorDeckDockWidget::updateBannerCardComboBox() QList cardsInDeck = getModel()->getCardRefs(); for (auto cardRef : cardsInDeck) { - if (!CardDatabaseManager::query()->getCard(cardRef)) { + if (!CardDatabaseManager::query().getCard(cardRef)) { continue; } diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp b/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp index cbf9dd3c4..2d6a67147 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp +++ b/cockatrice/src/interface/widgets/deck_editor/deck_state_manager.cpp @@ -280,7 +280,7 @@ static bool doSwapCard(DeckListModel *model, return false; } - if (ExactCard card = CardDatabaseManager::query()->getCard({cardName, providerId})) { + if (ExactCard card = CardDatabaseManager::query().getCard({cardName, providerId})) { model->addCard(card, otherZone); } else { // Third argument (true) says create the card no matter what, even if not in DB @@ -367,7 +367,7 @@ bool DeckStateManager::moveCardToZone(const QModelIndex &idx, const QString &tar } // Tokens only live in the tokens zone and cannot be moved into decks. - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(cardName); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(cardName); if (info && info->getIsToken()) { return false; } @@ -398,7 +398,7 @@ bool DeckStateManager::moveCardToZone(const QModelIndex &idx, const QString &tar return false; } - if (ExactCard card = CardDatabaseManager::query()->getCard({cardName, providerId})) { + if (ExactCard card = CardDatabaseManager::query().getCard({cardName, providerId})) { for (int i = 0; i < copies; ++i) { model->addCard(card, targetZoneName); } diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp index b06481c4b..11871972d 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_edit_tokens.cpp @@ -170,7 +170,7 @@ void DlgEditTokens::actAddToken() if (name.isEmpty()) { return; } - if (databaseModel->getDatabase()->query()->getCardInfo(name)) { + if (databaseModel->getDatabase()->query().getCardInfo(name)) { QMessageBox::critical(this, tr("Error"), 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.")); diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp index 1a4f0aeb9..609d425fe 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_select_set_for_cards.cpp @@ -176,8 +176,8 @@ static bool swapPrinting(DeckListModel *model, const QString &modifiedSet, const } int amount = model->data(idx.siblingAtColumn(DeckListModelColumns::CARD_AMOUNT), Qt::DisplayRole).toInt(); model->removeCardAtIndex(idx); - CardInfoPtr cardInfo = CardDatabaseManager::query()->getCardInfo(cardName); - PrintingInfo printing = CardDatabaseManager::query()->getSpecificPrinting(cardName, modifiedSet, ""); + CardInfoPtr cardInfo = CardDatabaseManager::query().getCardInfo(cardName); + PrintingInfo printing = CardDatabaseManager::query().getSpecificPrinting(cardName, modifiedSet, ""); for (int i = 0; i < amount; i++) { model->addCard(ExactCard(cardInfo, printing), DECK_ZONE_MAIN); } @@ -259,7 +259,7 @@ QMap DlgSelectSetForCards::getSetsForCards() QList cardNames = deckStateManager->getModel()->getCardNames(); for (auto cardName : cardNames) { - CardInfoPtr infoPtr = CardDatabaseManager::query()->getCardInfo(cardName); + CardInfoPtr infoPtr = CardDatabaseManager::query().getCardInfo(cardName); if (!infoPtr) { continue; } @@ -313,16 +313,16 @@ void DlgSelectSetForCards::updateCardLists() if (!found) { // The card was not in any selected set - ExactCard card = CardDatabaseManager::query()->getCard({cardName}); + ExactCard card = CardDatabaseManager::query().getCard({cardName}); CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(uneditedCardsFlowWidget); picture_widget->setCard(card); uneditedCardsFlowWidget->addWidget(picture_widget); } else { ExactCard card = - CardDatabaseManager::query()->getCard({cardName, CardDatabaseManager::getInstance() - ->query() - ->getSpecificPrinting(cardName, foundSetName, "") - .getUuid()}); + CardDatabaseManager::query().getCard({cardName, CardDatabaseManager::getInstance() + ->query() + .getSpecificPrinting(cardName, foundSetName, "") + .getUuid()}); CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(modifiedCardsFlowWidget); picture_widget->setCard(card); modifiedCardsFlowWidget->addWidget(picture_widget); @@ -378,7 +378,7 @@ QMap DlgSelectSetForCards::getCardsForSets() QList cardNames = deckStateManager->getModel()->getCardNames(); for (auto cardName : cardNames) { - CardInfoPtr infoPtr = CardDatabaseManager::query()->getCardInfo(cardName); + CardInfoPtr infoPtr = CardDatabaseManager::query().getCardInfo(cardName); if (!infoPtr) { continue; } @@ -625,15 +625,15 @@ void SetEntryWidget::updateCardDisplayWidgets() for (const QString &cardName : possibleCards) { CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(cardListContainer); - QString providerId = CardDatabaseManager::query()->getSpecificPrinting(cardName, setName, nullptr).getUuid(); - picture_widget->setCard(CardDatabaseManager::query()->getCard({cardName, providerId})); + QString providerId = CardDatabaseManager::query().getSpecificPrinting(cardName, setName, nullptr).getUuid(); + picture_widget->setCard(CardDatabaseManager::query().getCard({cardName, providerId})); cardListContainer->addWidget(picture_widget); } for (const QString &cardName : unusedCards) { CardInfoPictureWidget *picture_widget = new CardInfoPictureWidget(alreadySelectedCardListContainer); - QString providerId = CardDatabaseManager::query()->getSpecificPrinting(cardName, setName, nullptr).getUuid(); - picture_widget->setCard(CardDatabaseManager::query()->getCard({cardName, providerId})); + QString providerId = CardDatabaseManager::query().getSpecificPrinting(cardName, setName, nullptr).getUuid(); + picture_widget->setCard(CardDatabaseManager::query().getCard({cardName, providerId})); alreadySelectedCardListContainer->addWidget(picture_widget); } } diff --git a/cockatrice/src/interface/widgets/general/home_widget.cpp b/cockatrice/src/interface/widgets/general/home_widget.cpp index db4501efc..ae66470bd 100644 --- a/cockatrice/src/interface/widgets/general/home_widget.cpp +++ b/cockatrice/src/interface/widgets/general/home_widget.cpp @@ -215,7 +215,7 @@ void HomeWidget::setRandomCard(ExactCard &newCard) { static constexpr int ATTEMPTS = 10; for (int i = 0; i < ATTEMPTS; ++i) { - ExactCard tmpCard = CardDatabaseManager::query()->getRandomCard(); + ExactCard tmpCard = CardDatabaseManager::query().getRandomCard(); if (tmpCard != backgroundSourceCard->getCard() && tmpCard.getCardPtr()->getProperty("layout") == "normal" && tmpCard.getPrinting().getSet() != nullptr) { newCard = tmpCard; @@ -244,17 +244,17 @@ void HomeWidget::updateRandomCard() if (!cardRefs.empty()) { if (cardRefs.size() == 1) { - newCard = CardDatabaseManager::query()->getCard(cardRefs.first()); + newCard = CardDatabaseManager::query().getCard(cardRefs.first()); } else { // Keep picking until different do { int idx = QRandomGenerator::global()->bounded(cardRefs.size()); - newCard = CardDatabaseManager::query()->getCard(cardRefs.at(idx)); + newCard = CardDatabaseManager::query().getCard(cardRefs.at(idx)); } while (newCard == oldCard); } } else { do { - newCard = CardDatabaseManager::query()->getRandomCard(); + newCard = CardDatabaseManager::query().getRandomCard(); } while (newCard == oldCard); } break; diff --git a/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp b/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp index 5a4457d34..243da3a78 100644 --- a/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp +++ b/cockatrice/src/interface/widgets/playmat/playmat_settings_dialog.cpp @@ -211,7 +211,7 @@ void PlaymatSettingsDialog::populateProviderCombo(const QString &cardName) { providerComboBox->clear(); - auto card = CardDatabaseManager::query()->getCard({cardName}); + auto card = CardDatabaseManager::query().getCard({cardName}); const auto &sets = card.getInfo().getSets(); @@ -239,7 +239,7 @@ void PlaymatSettingsDialog::onCardNameChanged(const QString &name) return; } - const ExactCard card = CardDatabaseManager::query()->getCard({name}); + const ExactCard card = CardDatabaseManager::query().getCard({name}); if (!card) { currentPixmap = QPixmap(); preview->setPixmap(currentPixmap); @@ -268,7 +268,7 @@ void PlaymatSettingsDialog::reloadPreview() return; } - ExactCard card = CardDatabaseManager::query()->getCard({currentCard.name, currentCard.providerId}); + ExactCard card = CardDatabaseManager::query().getCard({currentCard.name, currentCard.providerId}); if (!card) { return; } diff --git a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp index a5177a6bc..bbebd17cc 100644 --- a/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp +++ b/cockatrice/src/interface/widgets/printing_selector/printing_selector_card_overlay_widget.cpp @@ -398,7 +398,7 @@ void PrintingSelectorCardOverlayWidget::customMenu(QPoint point) const QString &relatedCardName = rel->getName(); QAction *relatedCard = relatedMenu->addAction(relatedCardName); connect(relatedCard, &QAction::triggered, deckEditor, [this, relatedCardName] { - deckEditor->updateCard(CardDatabaseManager::query()->getCard({relatedCardName})); + deckEditor->updateCard(CardDatabaseManager::query().getCard({relatedCardName})); deckEditor->showPrintingSelector(); }); } diff --git a/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp b/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp index c57f65352..1c9b8e5e8 100644 --- a/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp +++ b/cockatrice/src/interface/widgets/server/chat_view/chat_view.cpp @@ -230,7 +230,7 @@ void ChatView::appendCardTag(QTextCursor &cursor, const QString &cardName) QTextCharFormat cardFormat = oldFormat; cardFormat.setFontItalic(true); - const CardInfoPtr card = CardDatabaseManager::query()->lookupCardByName(cardName); + const CardInfoPtr card = CardDatabaseManager::query().lookupCardByName(cardName); if (card.isNull()) { cardFormat.setForeground(unresolvedCardTagColor); cursor.setCharFormat(cardFormat); diff --git a/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp b/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp index 6e8fd771a..8bd73bb88 100644 --- a/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_card_art_provider.cpp @@ -100,7 +100,7 @@ void UserCardArtProvider::processQueue() const QString cardName = parts.at(1); const QString providerId = parts.at(2); - ExactCard card = CardDatabaseManager::query()->getCard({cardName, providerId}); + ExactCard card = CardDatabaseManager::query().getCard({cardName, providerId}); if (!card) { pending.remove(key); diff --git a/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp b/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp index 67fb57e78..0a1adda88 100644 --- a/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_card_settings_dialog.cpp @@ -487,7 +487,7 @@ void UserCardArtSettingsDialog::populateProviderCombo(const QString &cardName) { providerComboBox->clear(); - auto card = CardDatabaseManager::query()->getCard({cardName}); + auto card = CardDatabaseManager::query().getCard({cardName}); const auto &sets = card.getInfo().getSets(); @@ -517,7 +517,7 @@ void UserCardArtSettingsDialog::onCardNameChanged(const QString &name) return; } - const ExactCard card = CardDatabaseManager::query()->getCard({name}); + const ExactCard card = CardDatabaseManager::query().getCard({name}); if (!card) { currentPixmap = QPixmap(); preview->setPixmap(currentPixmap); @@ -547,7 +547,7 @@ void UserCardArtSettingsDialog::reloadPreview() return; } - ExactCard card = CardDatabaseManager::query()->getCard({currentParams.cardName, currentParams.cardProviderId}); + ExactCard card = CardDatabaseManager::query().getCard({currentParams.cardName, currentParams.cardProviderId}); if (!card) { return; } diff --git a/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp b/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp index 4b4887bc4..d7393fc61 100644 --- a/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp +++ b/cockatrice/src/interface/widgets/server/user/user_info_popup.cpp @@ -190,8 +190,8 @@ void UserInfoHeaderWidget::setUserData(const ServerInfo_User &_user, attribution.clear(); if (user.has_card_art_params()) { const ExactCard card = - CardDatabaseManager::query()->getCard({QString::fromStdString(user.card_art_params().card_name()), - QString::fromStdString(user.card_art_params().card_provider_id())}); + CardDatabaseManager::query().getCard({QString::fromStdString(user.card_art_params().card_name()), + QString::fromStdString(user.card_art_params().card_provider_id())}); if (card) { attribution = buildArtAttribution(card); } diff --git a/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp b/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp index 1e80b2715..5607a0388 100644 --- a/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp +++ b/cockatrice/src/interface/widgets/tabs/abstract_tab_deck_editor.cpp @@ -185,7 +185,7 @@ void AbstractTabDeckEditor::openDeck(const LoadedDeck &deck) void AbstractTabDeckEditor::setDeck(const LoadedDeck &_deck) { deckStateManager->replaceDeck(_deck); - CardPictureLoader::cacheCardPixmaps(CardDatabaseManager::query()->getCards(_deck.deckList.getCardRefList())); + CardPictureLoader::cacheCardPixmaps(CardDatabaseManager::query().getCards(_deck.deckList.getCardRefList())); dockToActions.value(deckDockWidget).aVisible->setChecked(true); deckDockWidget->setVisible(dockToActions.value(deckDockWidget).aVisible->isChecked()); diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp index 2b76de973..57b5fa5b8 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/cards/edhrec_api_response_card_details_display_widget.cpp @@ -29,7 +29,7 @@ EdhrecApiResponseCardDetailsDisplayWidget::EdhrecApiResponseCardDetailsDisplayWi setLayout(layout); cardPictureWidget = new CardInfoPictureWidget(this); - cardPictureWidget->setCard(CardDatabaseManager::query()->guessCard({toDisplay.sanitized})); + cardPictureWidget->setCard(CardDatabaseManager::query().guessCard({toDisplay.sanitized})); nameLabel = new QLabel(this); nameLabel->setText(toDisplay.name); diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp index df0319f88..7b5c0d9dd 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/display/commander/edhrec_api_response_commander_details_display_widget.cpp @@ -34,7 +34,7 @@ EdhrecCommanderResponseCommanderDetailsDisplayWidget::EdhrecCommanderResponseCom navigationAndPricesLayout = new QVBoxLayout(); commanderPicture = new CardInfoPictureWidget(this); - commanderPicture->setCard(CardDatabaseManager::query()->getCard({commanderDetails.getName()})); + commanderPicture->setCard(CardDatabaseManager::query().getCard({commanderDetails.getName()})); auto *parentTab = QtUtils::findParentOfType(this); diff --git a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp index c8822930e..1c07f67a9 100644 --- a/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/edhrec/tab_edhrec_main.cpp @@ -124,7 +124,7 @@ void TabEdhRecMain::retranslateUi() void TabEdhRecMain::doSearch() { - CardInfoPtr searchedCard = CardDatabaseManager::query()->getCardInfo(searchBar->text()); + CardInfoPtr searchedCard = CardDatabaseManager::query().getCardInfo(searchBar->text()); if (!searchedCard) { return; } diff --git a/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp b/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp index f18aa82b9..8a589c5ed 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_card_art_rules.cpp @@ -246,7 +246,7 @@ void TabCardArtRules::populateProviderCombo(const QString &cardName) { providerComboBox->clear(); - auto card = CardDatabaseManager::query()->getCard({cardName}); + auto card = CardDatabaseManager::query().getCard({cardName}); const auto &sets = card.getInfo().getSets(); diff --git a/cockatrice/src/interface/widgets/tabs/tab_game.cpp b/cockatrice/src/interface/widgets/tabs/tab_game.cpp index 5dba1fc51..b27eb5562 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_game.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_game.cpp @@ -973,7 +973,7 @@ void TabGame::loadDeckForLocalPlayer(PlayerLogic *localPlayer, int playerId, Ser TabbedDeckViewContainer *deckViewContainer = deckViewContainers.value(playerId); if (playerInfo.has_deck_list()) { DeckList deckList = DeckList(QString::fromStdString(playerInfo.deck_list())); - CardPictureLoader::cacheCardPixmaps(CardDatabaseManager::query()->getCards(deckList.getCardRefList())); + CardPictureLoader::cacheCardPixmaps(CardDatabaseManager::query().getCards(deckList.getCardRefList())); deckViewContainer->playerDeckView->setDeck(deckList); localPlayer->setDeck(deckList); } diff --git a/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp b/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp index 0090e9d65..3b1e3ced1 100644 --- a/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp +++ b/cockatrice/src/interface/widgets/utility/card_completer_delegate.cpp @@ -266,7 +266,7 @@ QString CardCompleterDelegate::setCodeForCard(const QSharedPointer &ca QString code; - const PrintingInfo printing = CardDatabaseManager::query()->getPreferredPrinting(card); + const PrintingInfo printing = CardDatabaseManager::query().getPreferredPrinting(card); if (auto set = printing.getSet()) { code = set->getShortName(); diff --git a/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp b/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp index 1a17bb8be..5848b6fa0 100644 --- a/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp +++ b/cockatrice/src/interface/widgets/utility/card_completer_styler.cpp @@ -326,7 +326,7 @@ void CardCompleterStyler::updatePreview(const QModelIndex &index) preview->setWindowOpacity(0.0); } - const ExactCard exact = CardDatabaseManager::query()->getCard({card->getName()}); + const ExactCard exact = CardDatabaseManager::query().getCard({card->getName()}); if (!exact) { hidePreview(); diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp index e0734fbb8..8433f0bf3 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_format_legality_filter_widget.cpp @@ -30,7 +30,7 @@ VisualDatabaseDisplayFormatLegalityFilterWidget::VisualDatabaseDisplayFormatLega FilterTreeModel *_filterModel) : QWidget(parent), filterModel(_filterModel) { - allFormatsWithCount = CardDatabaseManager::query()->getAllFormatsWithCount(); + allFormatsWithCount = CardDatabaseManager::query().getAllFormatsWithCount(); int maxValue = std::numeric_limits::min(); for (int value : allFormatsWithCount) { maxValue = std::max(maxValue, value); diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp index 018841b30..52a4d25e2 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_main_type_filter_widget.cpp @@ -28,7 +28,7 @@ VisualDatabaseDisplayMainTypeFilterWidget::VisualDatabaseDisplayMainTypeFilterWi : QWidget(parent), filterModel(_filterModel) { // Get all main card types with their count - allMainCardTypesWithCount = CardDatabaseManager::query()->getAllMainCardTypesWithCount(); + allMainCardTypesWithCount = CardDatabaseManager::query().getAllMainCardTypesWithCount(); setMinimumWidth(300); setMaximumHeight(200); diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp index 68a1edf11..7276bd962 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_sub_type_filter_widget.cpp @@ -28,7 +28,7 @@ VisualDatabaseDisplaySubTypeFilterWidget::VisualDatabaseDisplaySubTypeFilterWidg FilterTreeModel *_filterModel) : QWidget(parent), filterModel(_filterModel) { - allSubCardTypesWithCount = CardDatabaseManager::query()->getAllSubCardTypesWithCount(); + allSubCardTypesWithCount = CardDatabaseManager::query().getAllSubCardTypesWithCount(); setMinimumWidth(300); diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp index 6d9b28619..d8e082880 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.cpp @@ -133,7 +133,7 @@ VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent, // The visual grid is a real view on a flattened model: one row per displayed // card picture, painted on demand. - visualDisplayModel = new CardDatabaseVisualDisplayModel(databaseDisplayModel, CardDatabaseManager::query(), this); + visualDisplayModel = new CardDatabaseVisualDisplayModel(databaseDisplayModel, &CardDatabaseManager::query(), this); cardView = new CardDatabaseVisualView(visualDisplayModel, this); cardView->setObjectName("visualCardView"); @@ -300,24 +300,24 @@ void VisualDatabaseDisplayWidget::onSearchModelChanged() void VisualDatabaseDisplayWidget::onSelectedCardChanged(const QString &cardName) { - emit cardHoveredDatabaseDisplay(CardDatabaseManager::query()->getPreferredCard(cardName)); + emit cardHoveredDatabaseDisplay(CardDatabaseManager::query().getPreferredCard(cardName)); } void VisualDatabaseDisplayWidget::actAddCard(const QString &cardName, const QString &zoneName) { highlightAllSearchEdit(); - ExactCard exactCard = CardDatabaseManager::query()->getPreferredCard(cardName); + ExactCard exactCard = CardDatabaseManager::query().getPreferredCard(cardName); emit cardAdded(exactCard, zoneName); } void VisualDatabaseDisplayWidget::actDecrementCard(const QString &cardName, const QString &zoneName) { - ExactCard exactCard = CardDatabaseManager::query()->getPreferredCard(cardName); + ExactCard exactCard = CardDatabaseManager::query().getPreferredCard(cardName); emit cardDecremented(exactCard, zoneName); } void VisualDatabaseDisplayWidget::onRelatedCardClicked(const QString &relatedCard) { - ExactCard exactCard = CardDatabaseManager::query()->guessCard({relatedCard}); + ExactCard exactCard = CardDatabaseManager::query().guessCard({relatedCard}); emit cardInfoRequested(exactCard); } diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp index 91ad63433..b41e7740e 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_sample_hand_widget.cpp @@ -118,7 +118,7 @@ static QList cardNodesToExactCards(QList no { QList cards; for (auto node : nodes) { - ExactCard card = CardDatabaseManager::query()->getCard(node->toCardRef()); + ExactCard card = CardDatabaseManager::query().getCard(node->toCardRef()); if (card) { for (int k = 0; k < node->getNumber(); ++k) { cards.append(card); diff --git a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp index 0e0b5e4b4..989c67862 100644 --- a/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_editor/visual_deck_editor_widget.cpp @@ -152,7 +152,7 @@ void VisualDeckEditorWidget::initializeSearchBarAndCompleter() void VisualDeckEditorWidget::addCardFromSearch() { - ExactCard card = CardDatabaseManager::query()->getCard({searchBar->text()}); + ExactCard card = CardDatabaseManager::query().getCard({searchBar->text()}); if (!card) { return; } diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp index f2002d4e4..dcdef2500 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp @@ -274,7 +274,7 @@ void DeckPreviewWidget::syncFromModel() const CardRef bannerCardRef = data.deck.deckList.getBannerCard(); const ExactCard bannerCard = - bannerCardRef.name.isEmpty() ? ExactCard() : CardDatabaseManager::query()->getCard(bannerCardRef); + bannerCardRef.name.isEmpty() ? ExactCard() : CardDatabaseManager::query().getCard(bannerCardRef); bannerCardDisplayWidget->setCard(bannerCard); refreshBannerCardText(); @@ -419,7 +419,7 @@ void DeckPreviewWidget::setBannerCard(int /* changedIndex */) return; } model->setBannerCard(r, cardRef); - bannerCardDisplayWidget->setCard(CardDatabaseManager::query()->getCard(cardRef)); + bannerCardDisplayWidget->setCard(CardDatabaseManager::query().getCard(cardRef)); } void DeckPreviewWidget::imageClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance) diff --git a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp index 11a9da66f..c952a0ce5 100644 --- a/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_deck_storage/deck_preview/public_deck_preview_widget.cpp @@ -95,7 +95,7 @@ void PublicDeckPreviewWidget::setEntry(const RemotePublicDecksModel::DeckEntry & const ExactCard bannerCard = entry.bannerCardName.isEmpty() ? ExactCard() - : CardDatabaseManager::query()->getCard(CardRef{entry.bannerCardName, entry.bannerCardProvider}); + : CardDatabaseManager::query().getCard(CardRef{entry.bannerCardName, entry.bannerCardProvider}); bannerCardDisplayWidget->setCard(bannerCard); // The deck name is the overlay text on the banner, like the local preview. diff --git a/libcockatrice_card/libcockatrice/card/database/card_database.cpp b/libcockatrice_card/libcockatrice/card/database/card_database.cpp index 5362a65ea..f41c5b3f6 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database.cpp @@ -27,8 +27,7 @@ CardDatabase::CardDatabase(QObject *parent, ICardPreferenceProvider *prefs, ICardDatabasePathProvider *pathProvider, ICardSetPriorityController *_setPriorityController) - : QObject(parent), setPriorityController(_setPriorityController), loadStatus(NotLoaded), - querier(this, prefs) + : QObject(parent), setPriorityController(_setPriorityController), loadStatus(NotLoaded), querier(this, prefs) { qRegisterMetaType("CardInfoPtr"); qRegisterMetaType("CardSetPtr"); @@ -45,6 +44,17 @@ CardDatabase::CardDatabase(QObject *parent, // that cross-thread loads are delivered via the event loop while same-thread/ // synchronous callers get the swap immediately. connect(loader, &CardDatabaseLoader::databaseDataReady, this, &CardDatabase::swapInDatabaseData); + + // The querier is a plain (non-QObject) member, so its cache invalidation is + // driven from here instead of by connecting its own slots. + connect(this, &CardDatabase::cardAdded, this, &CardDatabase::invalidateQuerierCaches); + connect(this, &CardDatabase::cardRemoved, this, &CardDatabase::invalidateQuerierCaches); + connect(this, &CardDatabase::cardDatabaseReset, this, &CardDatabase::invalidateQuerierCaches); +} + +void CardDatabase::invalidateQuerierCaches() +{ + querier.invalidateCaches(); } CardDatabase::~CardDatabase() diff --git a/libcockatrice_card/libcockatrice/card/database/card_database.h b/libcockatrice_card/libcockatrice/card/database/card_database.h index 5c764d10f..3422275f0 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database.h @@ -3,6 +3,7 @@ #include "../set/card_set_list.h" #include "card_database_loader.h" +#include "card_database_querier.h" // IWYU pragma: keep // CardDatabaseData is passed by value to the swapInDatabaseData() slot, and @@ -18,7 +19,6 @@ #include #include -class CardDatabaseQuerier; class ICardDatabasePathProvider; class ICardPreferenceProvider; class ICardSetPriorityController; @@ -62,6 +62,7 @@ protected: /** @brief Querier for higher-level card lookups. */ CardDatabaseQuerier querier; +private: /** * @brief Refreshes the cached reverse-related cards for all cards. */ @@ -94,6 +95,11 @@ protected: QBasicMutex *clearDatabaseMutex = new QBasicMutex(), *addCardMutex = new QBasicMutex(), *removeCardMutex = new QBasicMutex(); + /** + * @brief Invalidates the querier's cached count maps after the database contents change. + */ + void invalidateQuerierCaches(); + public: /** * @brief Constructs a new CardDatabase instance. @@ -142,7 +148,7 @@ public: } /** @brief Returns the querier for performing card lookups. */ - [[nodiscard]] CardDatabaseQuerier const &query() const + [[nodiscard]] const CardDatabaseQuerier &query() const { return querier; } diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp b/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp index 8a7179e33..e298e244b 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database_manager.cpp @@ -36,7 +36,7 @@ CardDatabase *CardDatabaseManager::getInstance() return &instance; } -CardDatabaseQuerier const &CardDatabaseManager::query() +const CardDatabaseQuerier &CardDatabaseManager::query() { return getInstance()->query(); } \ No newline at end of file diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_manager.h b/libcockatrice_card/libcockatrice/card/database/card_database_manager.h index a269b2e54..327b7b21d 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_manager.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database_manager.h @@ -61,9 +61,9 @@ public: /** * @brief Returns the CardDatabaseQuerier of the singleton database. - * @return Pointer to CardDatabaseQuerier. + * @return Reference to the singleton database querier. */ - static CardDatabaseQuerier const &query(); + static const CardDatabaseQuerier &query(); private: /** @brief Private default constructor to enforce singleton. */ diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp b/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp index 43112db6b..d3e6396f6 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp +++ b/libcockatrice_card/libcockatrice/card/database/card_database_querier.cpp @@ -18,10 +18,6 @@ CardDatabaseQuerier::CardDatabaseQuerier(const CardDatabase *_db, const ICardPreferenceProvider *prefs) : db(_db), prefs(prefs) { - // Invalidate the cached count maps whenever the database contents change. - connect(db, &CardDatabase::cardAdded, this, &CardDatabaseQuerier::invalidateCaches); - connect(db, &CardDatabase::cardRemoved, this, &CardDatabaseQuerier::invalidateCaches); - connect(db, &CardDatabase::cardDatabaseReset, this, &CardDatabaseQuerier::invalidateCaches); } void CardDatabaseQuerier::invalidateCaches() diff --git a/libcockatrice_card/libcockatrice/card/database/card_database_querier.h b/libcockatrice_card/libcockatrice/card/database/card_database_querier.h index e6741dc05..edddff936 100644 --- a/libcockatrice_card/libcockatrice/card/database/card_database_querier.h +++ b/libcockatrice_card/libcockatrice/card/database/card_database_querier.h @@ -7,10 +7,8 @@ #include #include -#include #include #include -#include class CardDatabase; class ICardPreferenceProvider; @@ -232,8 +230,9 @@ private: mutable QMap subCardTypeCountsCache; mutable QMap formatsCountCache; -private slots: void invalidateCaches(); + + friend class CardDatabase; }; #endif // COCKATRICE_CARD_DATABASE_QUERIER_H diff --git a/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp b/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp index 975f7f2d6..3157702b0 100644 --- a/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp +++ b/libcockatrice_card/libcockatrice/card/import/card_name_normalizer.cpp @@ -18,7 +18,7 @@ */ static QString getCompleteCardName(const QString &cardName) { - ExactCard temp = CardDatabaseManager::query()->guessCard({cardName}); + ExactCard temp = CardDatabaseManager::query().guessCard({cardName}); if (temp) { return temp.getName(); } diff --git a/libcockatrice_game/libcockatrice/game/board/card_state.cpp b/libcockatrice_game/libcockatrice/game/board/card_state.cpp index 7e8c079a4..ea204221a 100644 --- a/libcockatrice_game/libcockatrice/game/board/card_state.cpp +++ b/libcockatrice_game/libcockatrice/game/board/card_state.cpp @@ -51,7 +51,7 @@ void CardState::setCardRef(const CardRef &_cardRef) void CardState::refreshCardInfo() { - exactCard = CardDatabaseManager::query()->getCard(cardRef); + exactCard = CardDatabaseManager::query().getCard(cardRef); if (!exactCard && !cardRef.name.isEmpty()) { CardInfo::UiAttributes attributes = {.tableRow = -1}; @@ -231,7 +231,7 @@ void CardState::setAttachedTo(CardState *_attachedTo) parentZone->reorganizeCards(); } } else if (getZone() != nullptr) { - emit getZone() -> cardAdded(this); + emit getZone()->cardAdded(this); } if (getZone() != nullptr) { diff --git a/libcockatrice_game/libcockatrice/game/player/player_actions.cpp b/libcockatrice_game/libcockatrice/game/player/player_actions.cpp index 90823fec6..a63b72b57 100644 --- a/libcockatrice_game/libcockatrice/game/player/player_actions.cpp +++ b/libcockatrice_game/libcockatrice/game/player/player_actions.cpp @@ -946,7 +946,7 @@ void PlayerActions::actCreateToken(TokenInfo tokenToCreate) { lastTokenInfo = tokenToCreate; - ExactCard correctedCard = CardDatabaseManager::query()->guessCard({lastTokenInfo.name, lastTokenInfo.providerId}); + ExactCard correctedCard = CardDatabaseManager::query().guessCard({lastTokenInfo.name, lastTokenInfo.providerId}); if (correctedCard) { lastTokenInfo.name = correctedCard.getName(); int tableRow = lastTokenInfo.faceDown ? 2 : correctedCard.getInfo().getUiAttributes().tableRow; @@ -1011,7 +1011,7 @@ void PlayerActions::setLastTokenInfo(CardInfoPtr cardInfo) void PlayerActions::actCreatePredefinedToken() { auto *action = static_cast(sender()); - CardInfoPtr cardInfo = CardDatabaseManager::query()->getCardInfo(action->text()); + CardInfoPtr cardInfo = CardDatabaseManager::query().getCardInfo(action->text()); if (!cardInfo) { return; } @@ -1115,7 +1115,7 @@ void PlayerActions::actCreateAllRelatedCards(const CardState *sourceCard) * then assign the first to the "Create another" shortcut. */ if (cardRelation != nullptr && cardRelation->getCanCreateAnother()) { - CardInfoPtr cardInfo = CardDatabaseManager::query()->getCardInfo(cardRelation->getName()); + CardInfoPtr cardInfo = CardDatabaseManager::query().getCardInfo(cardRelation->getName()); setLastToken(cardInfo); } } @@ -1193,7 +1193,7 @@ void PlayerActions::onRelatedCardCreated(const CardState *sourceCard, const Card } ExactCard relatedCard = - CardDatabaseManager::query()->getCardFromSameSet(cardRelation->getName(), sourceCard->getCard().getPrinting()); + CardDatabaseManager::query().getCardFromSameSet(cardRelation->getName(), sourceCard->getCard().getPrinting()); setLastToken(relatedCard.getCardPtr()); } @@ -1204,7 +1204,7 @@ void PlayerActions::createCard(const CardState *sourceCard, bool persistent, bool faceDown) { - CardInfoPtr cardInfo = CardDatabaseManager::query()->getCardInfo(dbCardName); + CardInfoPtr cardInfo = CardDatabaseManager::query().getCardInfo(dbCardName); if (cardInfo == nullptr || sourceCard == nullptr) { return; @@ -1240,7 +1240,7 @@ void PlayerActions::createCard(const CardState *sourceCard, cmd.set_face_down(faceDown); ExactCard relatedCard = - CardDatabaseManager::query()->getCardFromSameSet(cardInfo->getName(), sourceCard->getCard().getPrinting()); + CardDatabaseManager::query().getCardFromSameSet(cardInfo->getName(), sourceCard->getCard().getPrinting()); switch (attachType) { case CardRelationType::DoesNotAttach: diff --git a/libcockatrice_game/libcockatrice/game/player/player_event_handler.cpp b/libcockatrice_game/libcockatrice/game/player/player_event_handler.cpp index 6588547da..9826e63e2 100644 --- a/libcockatrice_game/libcockatrice/game/player/player_event_handler.cpp +++ b/libcockatrice_game/libcockatrice/game/player/player_event_handler.cpp @@ -162,7 +162,7 @@ void PlayerEventHandler::eventCreateToken(const Event_CreateToken &event) // use db PT if not provided in event and not face-down QString pt = QString::fromStdString(event.pt()); if (pt.isEmpty() && !event.face_down()) { - ExactCard dbCard = CardDatabaseManager::query()->getCard(cardRef); + ExactCard dbCard = CardDatabaseManager::query().getCard(cardRef); if (dbCard) { pt = dbCard.getInfo().getPowTough(); } diff --git a/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.cpp b/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.cpp index f6a3a925c..379ea2895 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.cpp +++ b/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.cpp @@ -12,7 +12,7 @@ static constexpr int REBUILD_COALESCE_MS = 30; CardDatabaseVisualDisplayModel::CardDatabaseVisualDisplayModel(CardDatabaseDisplayModel *_displayModel, - CardDatabaseQuerier *_querier, + const CardDatabaseQuerier *_querier, QObject *parent) : QAbstractListModel(parent), displayModel(_displayModel), querier(_querier) { diff --git a/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.h b/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.h index 1303b6464..2694d4192 100644 --- a/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.h +++ b/libcockatrice_models/libcockatrice/models/database/card_database_visual_display_model.h @@ -39,7 +39,7 @@ public: * @param parent Parent object. */ explicit CardDatabaseVisualDisplayModel(CardDatabaseDisplayModel *_displayModel, - CardDatabaseQuerier *_querier, + const CardDatabaseQuerier *_querier, QObject *parent = nullptr); /** @@ -81,7 +81,7 @@ private: void appendPrintingsFor(const CardInfoPtr &info); QPointer displayModel; - CardDatabaseQuerier *querier; + const CardDatabaseQuerier *querier; QStringList setFilterTerms; QList entries; QTimer rebuildTimer; 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 f3c4545d7..1d48e30fd 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_model.cpp @@ -103,7 +103,7 @@ void DeckListModel::rebuildTree() continue; } - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(currentCard->getName()); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(currentCard->getName()); QString groupCriteria = extractGroupCriteriaValue(info, activeGroupCriteria); auto *groupNode = dynamic_cast(node->findChild(groupCriteria)); @@ -221,7 +221,7 @@ QVariant DeckListModel::data(const QModelIndex &index, int role) const return card->getNumber(); case DeckListModelColumns::CARD_NAME: { if (role == Qt::DisplayRole) { - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(card->getName()); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(card->getName()); if (info) { return info->getLocalizedName(displayLang); } @@ -438,7 +438,7 @@ DecklistModelCardNode *DeckListModel::findCardNode(const QString &cardName, const QString &providerId, const QString &cardNumber) const { - CardInfoPtr info = CardDatabaseManager::query()->getCardInfo(cardName); + CardInfoPtr info = CardDatabaseManager::query().getCardInfo(cardName); if (!info) { return nullptr; } @@ -493,7 +493,7 @@ QModelIndex DeckListModel::findCard(const QString &cardName, QModelIndex DeckListModel::addPreferredPrintingCard(const QString &cardName, const QString &zoneName, bool abAddAnyway) { - ExactCard card = CardDatabaseManager::query()->getCard({cardName}); + ExactCard card = CardDatabaseManager::query().getCard({cardName}); if (!card) { if (abAddAnyway) { @@ -910,7 +910,7 @@ static bool isCardQuantityLegalForFormat(const QString &format, const CardInfo & return true; } - auto formatRules = CardDatabaseManager::query()->getFormat(format); + auto formatRules = CardDatabaseManager::query().getFormat(format); // if format has no custom rules, then just do the default check if (!formatRules) { @@ -949,7 +949,7 @@ static bool isCardNodeLegalForFormat(const QString &format, const InnerDecklistN } // unknown cards are not legal - ExactCard exactCard = CardDatabaseManager::query()->getCard(card->toCardRef()); + ExactCard exactCard = CardDatabaseManager::query().getCard(card->toCardRef()); if (!exactCard) { return false; } diff --git a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp index cf3410560..0a5252a1f 100644 --- a/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp +++ b/libcockatrice_models/libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp @@ -30,8 +30,8 @@ bool DeckListSortFilterProxyModel::lessThan(const QModelIndex &left, const QMode auto *lNode = static_cast(left.internalPointer()); auto *rNode = static_cast(right.internalPointer()); - CardInfoPtr lInfo = CardDatabaseManager::query()->guessCard({lNode->getName()}).getCardPtr(); - CardInfoPtr rInfo = CardDatabaseManager::query()->guessCard({rNode->getName()}).getCardPtr(); + CardInfoPtr lInfo = CardDatabaseManager::query().guessCard({lNode->getName()}).getCardPtr(); + CardInfoPtr rInfo = CardDatabaseManager::query().guessCard({rNode->getName()}).getCardPtr(); // Example: multiple tie-break criteria (colors > cmc > name) for (const QString &crit : sortCriteria) { diff --git a/tests/carddatabase/carddatabase_test.cpp b/tests/carddatabase/carddatabase_test.cpp index 350d9be7e..592f1e257 100644 --- a/tests/carddatabase/carddatabase_test.cpp +++ b/tests/carddatabase/carddatabase_test.cpp @@ -48,21 +48,21 @@ TEST(CardDatabaseTest, LoadXml) // ensure the card database is empty at start ASSERT_EQ(0, db->getCardList().size()) << "Cards not empty at start"; ASSERT_EQ(0, db->getSetList().size()) << "Sets not empty at start"; - ASSERT_EQ(0, db->query()->getAllMainCardTypes().size()) << "Types not empty at start"; + ASSERT_EQ(0, db->query().getAllMainCardTypes().size()) << "Types not empty at start"; ASSERT_EQ(NotLoaded, db->getLoadStatus()) << "Incorrect status at start"; // load dummy cards and test result db->loadCardDatabases(); ASSERT_EQ(9, db->getCardList().size()) << "Wrong card count after load"; ASSERT_EQ(5, db->getSetList().size()) << "Wrong sets count after load"; - ASSERT_EQ(3, db->query()->getAllMainCardTypes().size()) << "Wrong types count after load"; + ASSERT_EQ(3, db->query().getAllMainCardTypes().size()) << "Wrong types count after load"; ASSERT_EQ(Ok, db->getLoadStatus()) << "Wrong status after load"; // ensure the card database is empty after clear() db->clear(); ASSERT_EQ(0, db->getCardList().size()) << "Cards not empty after clear"; ASSERT_EQ(0, db->getSetList().size()) << "Sets not empty after clear"; - ASSERT_EQ(0, db->query()->getAllMainCardTypes().size()) << "Types not empty after clear"; + ASSERT_EQ(0, db->query().getAllMainCardTypes().size()) << "Types not empty after clear"; ASSERT_EQ(NotLoaded, db->getLoadStatus()) << "Incorrect status after clear"; } @@ -112,7 +112,7 @@ TEST(CardDatabaseTest, GuessCardWithProviderIdOnUnknownCardReturnsEmpty) NoopCardSetPriorityController controller; CardDatabase db(nullptr, &prefs, &pathProvider, &controller); - const ExactCard guessed = db.query()->guessCard({"Not a Card", "card_Not a Card_fixture"}); + const ExactCard guessed = db.query().guessCard({"Not a Card", "card_Not a Card_fixture"}); EXPECT_TRUE(guessed.isEmpty()); EXPECT_FALSE(guessed); @@ -125,7 +125,7 @@ TEST(CardDatabaseTest, FindPrintingWithIdOnNullCardInfoReturnsEmpty) NoopCardSetPriorityController controller; CardDatabase db(nullptr, &prefs, &pathProvider, &controller); - EXPECT_TRUE(db.query()->findPrintingWithId(nullptr, "card_Not a Card_fixture").isEmpty()); + EXPECT_TRUE(db.query().findPrintingWithId(nullptr, "card_Not a Card_fixture").isEmpty()); } TEST(CardInfoTest, ClearDirectRelationsDropsRawPointers) diff --git a/tests/carddatabase/filter_string_test.cpp b/tests/carddatabase/filter_string_test.cpp index 88058278f..3ccc435ef 100644 --- a/tests/carddatabase/filter_string_test.cpp +++ b/tests/carddatabase/filter_string_test.cpp @@ -43,10 +43,10 @@ protected: new TestCardDatabasePathProvider(), new NoopCardSetPriorityController()); db->loadCardDatabases(); - cat = db->query()->getCardBySimpleName("Cat"); - notDeadAfterAll = db->query()->getCardBySimpleName("Not Dead"); - truth = db->query()->getCardBySimpleName("Truth"); - doctor = db->query()->getCardBySimpleName("Doctor"); + cat = db->query().getCardBySimpleName("Cat"); + notDeadAfterAll = db->query().getCardBySimpleName("Not Dead"); + truth = db->query().getCardBySimpleName("Truth"); + doctor = db->query().getCardBySimpleName("Doctor"); } // void TearDown() override {} diff --git a/tests/carddatabase/visual_display_model_test.cpp b/tests/carddatabase/visual_display_model_test.cpp index 5fa554bb3..0a5069c14 100644 --- a/tests/carddatabase/visual_display_model_test.cpp +++ b/tests/carddatabase/visual_display_model_test.cpp @@ -60,7 +60,7 @@ protected: cardModel = std::make_unique(db.get(), false); displayModel = std::make_unique(); displayModel->setSourceModel(cardModel.get()); - visualModel = std::make_unique(displayModel.get(), db->query()); + visualModel = std::make_unique(displayModel.get(), &db->query()); visualModel->refresh(); }