From 48bcd0a6ec8e8ec446c97cade859995492b59255 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Br=C3=BCbach?= Date: Thu, 21 Nov 2024 14:43:23 +0100 Subject: [PATCH] Visual Deck Storage --- .../visual_deck_storage/tab_deck_storage_visual.cpp | 10 ++++++---- cockatrice/src/client/ui/window_main.cpp | 3 +++ cockatrice/src/game/cards/card_database_model.h | 5 +++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/cockatrice/src/client/tabs/visual_deck_storage/tab_deck_storage_visual.cpp b/cockatrice/src/client/tabs/visual_deck_storage/tab_deck_storage_visual.cpp index 6a54dad7f..d3b19233a 100644 --- a/cockatrice/src/client/tabs/visual_deck_storage/tab_deck_storage_visual.cpp +++ b/cockatrice/src/client/tabs/visual_deck_storage/tab_deck_storage_visual.cpp @@ -110,11 +110,13 @@ QStringList TabDeckStorageVisual::getBannerCardsForDecks() //qDebug() << info->getCardType(); CardInfoPerSetMap setMap = info->getSets(); - OverlapWidget *printings_group_widget = new OverlapWidget(80, 0, 0, Qt::Orientation::Vertical, this); + OverlapWidget *printings_group_widget = + new OverlapWidget(this, 80, 0, 0, Qt::Orientation::Vertical); for (auto set : setMap) { - //qDebug() << set.getPtr()->getLongName(); - CardInfoPtr set_info = CardDatabaseManager::getInstance()->getCardByNameAndUUID(currentCard->getName(), set.getProperty("uuid")); - CardInfoPictureWithTextOverlayWidget* display = new CardInfoPictureWithTextOverlayWidget(printings_group_widget, true); + // qDebug() << set.getPtr()->getLongName(); + CardInfoPtr set_info = CardDatabaseManager::getInstance()->getCardByNameAndProviderId( + currentCard->getName(), set.getProperty("uuid")); + CardInfoPictureWithTextOverlayWidget * display = new CardInfoPictureWithTextOverlayWidget(printings_group_widget, true); display->setCard(set_info); display->setOverlayText(deck_loader->getName()); display->setFontSize(24); diff --git a/cockatrice/src/client/ui/window_main.cpp b/cockatrice/src/client/ui/window_main.cpp index eb8ff33c4..9be2883e9 100644 --- a/cockatrice/src/client/ui/window_main.cpp +++ b/cockatrice/src/client/ui/window_main.cpp @@ -871,6 +871,9 @@ MainWindow::MainWindow(QWidget *parent) connect(&SettingsCache::instance().shortcuts(), SIGNAL(shortCutChanged()), this, SLOT(refreshShortcuts())); refreshShortcuts(); + + connect(CardDatabaseManager::getInstance(), SIGNAL(cardDatabaseLoadingFinished()), tabSupervisor, + SLOT(addVisualDeckStorageTab())); connect(CardDatabaseManager::getInstance(), SIGNAL(cardDatabaseLoadingFailed()), this, SLOT(cardDatabaseLoadingFailed())); connect(CardDatabaseManager::getInstance(), SIGNAL(cardDatabaseNewSetsFound(int, QStringList)), this, diff --git a/cockatrice/src/game/cards/card_database_model.h b/cockatrice/src/game/cards/card_database_model.h index 1720b4b9a..5a6b8feec 100644 --- a/cockatrice/src/game/cards/card_database_model.h +++ b/cockatrice/src/game/cards/card_database_model.h @@ -117,14 +117,15 @@ public: } void clearFilterAll(); int rowCount(const QModelIndex &parent = QModelIndex()) const override; + bool canFetchMore(const QModelIndex &parent) const override; + void fetchMore(const QModelIndex &parent) override; protected: bool lessThan(const QModelIndex &left, const QModelIndex &right) const override; static int lessThanNumerically(const QString &left, const QString &right); bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const override; bool rowMatchesCardName(CardInfoPtr info) const; - bool canFetchMore(const QModelIndex &parent) const override; - void fetchMore(const QModelIndex &parent) override; + private slots: void filterTreeChanged(); /** Will translate all undesirable characters in DIRTYNAME according to the TABLE. */