From 6edaa6db25c8a5a8b552ebb63831ae160fc089a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Br=C3=BCbach=2C=20Lukas?= Date: Mon, 24 Nov 2025 18:02:05 +0100 Subject: [PATCH] Lont. --- .../card/archidekt_api_response_card.h | 2 +- .../card/archidekt_api_response_edition.h | 1 - .../deck/archidekt_api_response_deck.h | 1 - ...kt_api_response_deck_listing_container.cpp | 2 +- ...idekt_api_response_deck_display_widget.cpp | 69 ++++++++++--------- .../tabs/api/archidekt/tab_archidekt.cpp | 6 +- .../tabs/api/archidekt/tab_archidekt.h | 4 +- 7 files changed, 41 insertions(+), 44 deletions(-) diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h index 937b2f4e8..265498228 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card.h @@ -60,7 +60,7 @@ private: QJsonObject oracleCard; int owned; int pinnedStatus; - //ArchidektApiResponsePrices prices; + // ArchidektApiResponsePrices prices; QString rarity; QStringList globalCategories; }; diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h index f58911139..b898cd816 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_edition.h @@ -48,5 +48,4 @@ private: QString mtgoCode; }; - #endif // COCKATRICE_ARCHIDEKT_API_RESPONSE_EDITION_H diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h index 7a4f3258c..8cb81cac3 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck/archidekt_api_response_deck.h @@ -68,5 +68,4 @@ private: QStringList customCards; }; - #endif // COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_H diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp index 2f2bf9280..9eab6f7ee 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/deck_listings/archidekt_api_response_deck_listing_container.cpp @@ -23,7 +23,7 @@ void ArchidektApiResponseDeckListingContainer::fromJson(const QJsonObject &json) theoryCrafted = json.value("theoryCrafted").toBool(); game = json.value("game").toString(); hasDescription = json.value("hasDescription").toBool(); - //TODO + // TODO tags = {}; parentFolderId = json.value("parentFolderId").toInt(); owner.fromJson(json.value("owner").toObject()); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp index ead81fcb8..8355b6270 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp @@ -22,7 +22,8 @@ ArchidektApiResponseDeckDisplayWidget::ArchidektApiResponseDeckDisplayWidget(QWi openInEditorButton = new QPushButton(this); layout->addWidget(openInEditorButton); - connect(openInEditorButton, &QPushButton::clicked, this, &ArchidektApiResponseDeckDisplayWidget::actOpenInDeckEditor); + connect(openInEditorButton, &QPushButton::clicked, this, + &ArchidektApiResponseDeckDisplayWidget::actOpenInDeckEditor); scrollArea = new QScrollArea(this); scrollArea->setWidgetResizable(true); @@ -94,44 +95,44 @@ void ArchidektApiResponseDeckDisplayWidget::decklistModelReset() constructZoneWidgetsFromDeckListModel(); } - void ArchidektApiResponseDeckDisplayWidget::constructZoneWidgetsFromDeckListModel() - { - qDebug() << model->rowCount(model->getRoot()); - QSortFilterProxyModel proxy; - proxy.setSourceModel(model); - proxy.setSortRole(Qt::EditRole); - proxy.sort(1, Qt::AscendingOrder); +void ArchidektApiResponseDeckDisplayWidget::constructZoneWidgetsFromDeckListModel() +{ + qDebug() << model->rowCount(model->getRoot()); + QSortFilterProxyModel proxy; + proxy.setSourceModel(model); + proxy.setSortRole(Qt::EditRole); + proxy.sort(1, Qt::AscendingOrder); - for (int i = 0; i < proxy.rowCount(); ++i) { - QModelIndex proxyIndex = proxy.index(i, 0); - QModelIndex sourceIndex = proxy.mapToSource(proxyIndex); + for (int i = 0; i < proxy.rowCount(); ++i) { + QModelIndex proxyIndex = proxy.index(i, 0); + QModelIndex sourceIndex = proxy.mapToSource(proxyIndex); - // Make a persistent index from the *source* model - QPersistentModelIndex persistent(sourceIndex); + // Make a persistent index from the *source* model + QPersistentModelIndex persistent(sourceIndex); - if (indexToWidgetMap.contains(persistent)) { - continue; - } - - DeckCardZoneDisplayWidget *zoneDisplayWidget = new DeckCardZoneDisplayWidget( - zoneContainer, model, persistent, - model->data(persistent.sibling(persistent.row(), 1), Qt::EditRole).toString(), "maintype", - {"name"}, DisplayType::Overlap, 20, 10, cardSizeSlider); - /*connect(zoneDisplayWidget, &DeckCardZoneDisplayWidget::cardHovered, this, &VisualDeckEditorWidget::onHover); - connect(zoneDisplayWidget, &DeckCardZoneDisplayWidget::cardClicked, this, &VisualDeckEditorWidget::onCardClick); - connect(zoneDisplayWidget, &DeckCardZoneDisplayWidget::requestCleanup, this, - &VisualDeckEditorWidget::cleanupInvalidZones); - connect(this, &VisualDeckEditorWidget::activeSortCriteriaChanged, zoneDisplayWidget, - &DeckCardZoneDisplayWidget::onActiveSortCriteriaChanged); - connect(this, &VisualDeckEditorWidget::activeGroupCriteriaChanged, zoneDisplayWidget, - &DeckCardZoneDisplayWidget::onActiveGroupCriteriaChanged); - connect(this, &VisualDeckEditorWidget::displayTypeChanged, zoneDisplayWidget, - &DeckCardZoneDisplayWidget::refreshDisplayType);*/ - zoneContainerLayout->addWidget(zoneDisplayWidget); - - indexToWidgetMap.insert(persistent, zoneDisplayWidget); + if (indexToWidgetMap.contains(persistent)) { + continue; } + + DeckCardZoneDisplayWidget *zoneDisplayWidget = + new DeckCardZoneDisplayWidget(zoneContainer, model, persistent, + model->data(persistent.sibling(persistent.row(), 1), Qt::EditRole).toString(), + "maintype", {"name"}, DisplayType::Overlap, 20, 10, cardSizeSlider); + /*connect(zoneDisplayWidget, &DeckCardZoneDisplayWidget::cardHovered, this, &VisualDeckEditorWidget::onHover); + connect(zoneDisplayWidget, &DeckCardZoneDisplayWidget::cardClicked, this, &VisualDeckEditorWidget::onCardClick); + connect(zoneDisplayWidget, &DeckCardZoneDisplayWidget::requestCleanup, this, + &VisualDeckEditorWidget::cleanupInvalidZones); + connect(this, &VisualDeckEditorWidget::activeSortCriteriaChanged, zoneDisplayWidget, + &DeckCardZoneDisplayWidget::onActiveSortCriteriaChanged); + connect(this, &VisualDeckEditorWidget::activeGroupCriteriaChanged, zoneDisplayWidget, + &DeckCardZoneDisplayWidget::onActiveGroupCriteriaChanged); + connect(this, &VisualDeckEditorWidget::displayTypeChanged, zoneDisplayWidget, + &DeckCardZoneDisplayWidget::refreshDisplayType);*/ + zoneContainerLayout->addWidget(zoneDisplayWidget); + + indexToWidgetMap.insert(persistent, zoneDisplayWidget); } +} void ArchidektApiResponseDeckDisplayWidget::resizeEvent(QResizeEvent *event) { diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp index 74e0a23b3..4dbb9a024 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.cpp @@ -218,9 +218,9 @@ void TabArchidekt::processDeckResponse(QJsonObject reply) currentPageDisplay->setLayout(currentPageLayout); auto display = new ArchidektApiResponseDeckDisplayWidget(currentPageDisplay, deckData, cardSizeSlider); - connect(display, &ArchidektApiResponseDeckDisplayWidget::requestNavigation, this, - &TabArchidekt::actNavigatePage); - connect(display, &ArchidektApiResponseDeckDisplayWidget::openInDeckEditor, tabSupervisor, &TabSupervisor::openDeckInNewTab); + connect(display, &ArchidektApiResponseDeckDisplayWidget::requestNavigation, this, &TabArchidekt::actNavigatePage); + connect(display, &ArchidektApiResponseDeckDisplayWidget::openInDeckEditor, tabSupervisor, + &TabSupervisor::openDeckInNewTab); currentPageLayout->addWidget(display); mainLayout->addWidget(currentPageDisplay); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h index b6b4019f5..38a26a00d 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/tab_archidekt.h @@ -9,9 +9,8 @@ #include #include #include -#include - #include +#include inline QString archidektApiLink = "https://archidekt.com/api/decks/v3/?name="; @@ -59,5 +58,4 @@ private: CardInfoPtr cardToQuery; }; - #endif // COCKATRICE_TAB_ARCHIDEKT_H