Address Comments

This commit is contained in:
ZeldaZach 2025-01-25 17:11:23 -05:00
parent 2afc4aa3a3
commit 24d7d0725c
No known key found for this signature in database
5 changed files with 19 additions and 17 deletions

View file

@ -38,7 +38,7 @@ EdhrecCommanderApiResponseDisplayWidget::EdhrecCommanderApiResponseDisplayWidget
// Add card list widgets // Add card list widgets
auto edhrec_commander_api_response_card_lists = response.container.getCardlists(); auto edhrec_commander_api_response_card_lists = response.container.getCardlists();
foreach (EdhrecCommanderApiResponseCardList card_list, edhrec_commander_api_response_card_lists) { for (const EdhrecCommanderApiResponseCardList &card_list : edhrec_commander_api_response_card_lists) {
auto cardListDisplayWidget = new EdhrecCommanderApiResponseCardListDisplayWidget(this, card_list); auto cardListDisplayWidget = new EdhrecCommanderApiResponseCardListDisplayWidget(this, card_list);
cardDisplayLayout->addWidget(cardListDisplayWidget); cardDisplayLayout->addWidget(cardListDisplayWidget);
widgetNames.append(cardListDisplayWidget->getBannerText()); widgetNames.append(cardListDisplayWidget->getBannerText());
@ -96,9 +96,7 @@ void EdhrecCommanderApiResponseDisplayWidget::resizeEvent(QResizeEvent *event)
layout->invalidate(); layout->invalidate();
layout->activate(); layout->activate();
layout->update(); layout->update();
if (scrollArea) { if (scrollArea && scrollArea->widget()) {
if (scrollArea->widget()) {
scrollArea->widget()->resize(event->size()); scrollArea->widget()->resize(event->size());
} }
}
} }

View file

@ -51,6 +51,13 @@
#include <QUrl> #include <QUrl>
#include <QVBoxLayout> #include <QVBoxLayout>
static bool canBeCommander(const CardInfoPtr &cardInfo)
{
return ((cardInfo->getCardType().contains("Legendary", Qt::CaseInsensitive) &&
cardInfo->getCardType().contains("Creature", Qt::CaseInsensitive))) ||
cardInfo->getText().contains("can be your commander", Qt::CaseInsensitive);
}
void TabDeckEditor::createDeckDock() void TabDeckEditor::createDeckDock()
{ {
deckModel = new DeckListModel(this); deckModel = new DeckListModel(this);
@ -546,9 +553,7 @@ void TabDeckEditor::databaseCustomMenu(QPoint point)
addToDeck = menu.addAction(tr("Add to Deck")); addToDeck = menu.addAction(tr("Add to Deck"));
addToSideboard = menu.addAction(tr("Add to Sideboard")); addToSideboard = menu.addAction(tr("Add to Sideboard"));
selectPrinting = menu.addAction(tr("Select Printing")); selectPrinting = menu.addAction(tr("Select Printing"));
if ((info->getCardType().contains("Legendary", Qt::CaseInsensitive) && if (canBeCommander(info)) {
info->getCardType().contains("Creature", Qt::CaseInsensitive)) ||
info->getText().contains("can be your commander", Qt::CaseInsensitive)) {
edhRecCommander = menu.addAction(tr("Show on EDHREC (Commander)")); edhRecCommander = menu.addAction(tr("Show on EDHREC (Commander)"));
connect(edhRecCommander, &QAction::triggered, this, connect(edhRecCommander, &QAction::triggered, this,
[this, info] { this->tabSupervisor->addEdhrecTab(info, true); }); [this, info] { this->tabSupervisor->addEdhrecTab(info, true); });

View file

@ -716,13 +716,13 @@ TabDeckEditor *TabSupervisor::addDeckEditorTab(const DeckLoader *deckToOpen)
return tab; return tab;
} }
TabEdhRec *TabSupervisor::addEdhrecTab(const CardInfoPtr cardToQuery, bool isCommander) TabEdhRec *TabSupervisor::addEdhrecTab(const CardInfoPtr &cardToQuery, bool isCommander)
{ {
TabEdhRec *tab = new TabEdhRec(this); auto *tab = new TabEdhRec(this);
if (cardToQuery) if (cardToQuery) {
tab->setCard(cardToQuery, isCommander); tab->setCard(cardToQuery, isCommander);
// connect(tab, &TabDeckEditor::deckEditorClosing, this, &TabSupervisor::deckEditorClosed); }
// connect(tab, &TabDeckEditor::openDeckEditor, this, &TabSupervisor::addDeckEditorTab);
myAddTab(tab); myAddTab(tab);
setCurrentWidget(tab); setCurrentWidget(tab);
return tab; return tab;

View file

@ -148,7 +148,7 @@ signals:
public slots: public slots:
TabDeckEditor *addDeckEditorTab(const DeckLoader *deckToOpen); TabDeckEditor *addDeckEditorTab(const DeckLoader *deckToOpen);
TabEdhRec *addEdhrecTab(CardInfoPtr cardToQuery, bool isCommander = false); TabEdhRec *addEdhrecTab(const CardInfoPtr& cardToQuery, bool isCommander = false);
void openReplay(GameReplay *replay); void openReplay(GameReplay *replay);
void maximizeMainWindow(); void maximizeMainWindow();
private slots: private slots:

View file

@ -261,12 +261,11 @@ QMenu *CardInfoPictureWidget::createRightClickMenu()
cardMenu->addMenu(viewRelatedCards); cardMenu->addMenu(viewRelatedCards);
cardMenu->addMenu(addToOpenDeckMenu); cardMenu->addMenu(addToOpenDeckMenu);
QWidget *topLevel = window(); auto *mainWindow = qobject_cast<MainWindow *>(window());
auto *mainWindow = qobject_cast<MainWindow *>(topLevel);
QList<TabDeckEditor *> deckEditorTabs = mainWindow->getTabSupervisor()->getDeckEditorTabs(); QList<TabDeckEditor *> deckEditorTabs = mainWindow->getTabSupervisor()->getDeckEditorTabs();
for (auto &deckEditorTab : deckEditorTabs) { for (auto &deckEditorTab : deckEditorTabs) {
auto *addCardMenu = new QMenu("Add card to " + deckEditorTab->getTabText()); auto *addCardMenu = new QMenu(tr("Add card to") + " " + deckEditorTab->getTabText());
QAction *addCard = new QAction(this); QAction *addCard = new QAction(this);
addCard->setText(tr("Mainboard")); addCard->setText(tr("Mainboard"));
connect(addCard, &QAction::triggered, this, [this, deckEditorTab] { connect(addCard, &QAction::triggered, this, [this, deckEditorTab] {