mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-18 16:32:16 -07:00
Distinguish between looking up a card as a commander and a card.
This commit is contained in:
parent
276a8fa335
commit
364865487a
5 changed files with 21 additions and 9 deletions
|
|
@ -43,7 +43,7 @@ void TabEdhRec::retranslateUi()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void TabEdhRec::setCard(CardInfoPtr _cardToQuery)
|
void TabEdhRec::setCard(CardInfoPtr _cardToQuery, bool isCommander)
|
||||||
{
|
{
|
||||||
cardToQuery = _cardToQuery;
|
cardToQuery = _cardToQuery;
|
||||||
|
|
||||||
|
|
@ -55,7 +55,12 @@ void TabEdhRec::setCard(CardInfoPtr _cardToQuery)
|
||||||
QString cardName = cardToQuery->getName();
|
QString cardName = cardToQuery->getName();
|
||||||
QString formattedName = cardName.toLower().replace(" ", "-").remove(QRegularExpression("[^a-z0-9\\-]"));
|
QString formattedName = cardName.toLower().replace(" ", "-").remove(QRegularExpression("[^a-z0-9\\-]"));
|
||||||
|
|
||||||
QString url = QString("https://json.edhrec.com/pages/commanders/%1.json").arg(formattedName);
|
QString url;
|
||||||
|
if (isCommander) {
|
||||||
|
url = QString("https://json.edhrec.com/pages/commanders/%1.json").arg(formattedName);
|
||||||
|
} else {
|
||||||
|
url = QString("https://json.edhrec.com/pages/cards/%1.json").arg(formattedName);
|
||||||
|
}
|
||||||
|
|
||||||
QNetworkRequest request{QUrl(url)};
|
QNetworkRequest request{QUrl(url)};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@ public:
|
||||||
public slots:
|
public slots:
|
||||||
void processApiJson(QNetworkReply *reply);
|
void processApiJson(QNetworkReply *reply);
|
||||||
void prettyPrintJson(const QJsonValue &value, int indentLevel);
|
void prettyPrintJson(const QJsonValue &value, int indentLevel);
|
||||||
void setCard(CardInfoPtr _cardToQuery);
|
void setCard(CardInfoPtr _cardToQuery, bool isCommander = false);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QScrollArea *scrollArea;
|
QScrollArea *scrollArea;
|
||||||
|
|
|
||||||
|
|
@ -542,16 +542,23 @@ void TabDeckEditor::databaseCustomMenu(QPoint point)
|
||||||
|
|
||||||
if (info) {
|
if (info) {
|
||||||
// add to deck and sideboard options
|
// add to deck and sideboard options
|
||||||
QAction *addToDeck, *addToSideboard, *selectPrinting, *edhRec;
|
QAction *addToDeck, *addToSideboard, *selectPrinting, *edhRecCommander, *edhRecCard;
|
||||||
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"));
|
||||||
edhRec = menu.addAction(tr("Show on EDHREC"));
|
if ((info->getCardType().contains("Legendary", Qt::CaseInsensitive) &&
|
||||||
|
info->getCardType().contains("Creature", Qt::CaseInsensitive)) ||
|
||||||
|
info->getText().contains("can be your commander", Qt::CaseInsensitive)) {
|
||||||
|
edhRecCommander = menu.addAction(tr("Show on EDHREC (Commander)"));
|
||||||
|
connect(edhRecCommander, &QAction::triggered, this,
|
||||||
|
[this, info] { this->tabSupervisor->addEdhrecTab(info, true); });
|
||||||
|
}
|
||||||
|
edhRecCard = menu.addAction(tr("Show on EDHREC (Card)"));
|
||||||
|
|
||||||
connect(addToDeck, SIGNAL(triggered()), this, SLOT(actAddCard()));
|
connect(addToDeck, SIGNAL(triggered()), this, SLOT(actAddCard()));
|
||||||
connect(addToSideboard, SIGNAL(triggered()), this, SLOT(actAddCardToSideboard()));
|
connect(addToSideboard, SIGNAL(triggered()), this, SLOT(actAddCardToSideboard()));
|
||||||
connect(selectPrinting, &QAction::triggered, this, [this, info] { this->showPrintingSelector(); });
|
connect(selectPrinting, &QAction::triggered, this, [this, info] { this->showPrintingSelector(); });
|
||||||
connect(edhRec, &QAction::triggered, this, [this, info] { this->tabSupervisor->addEdhrecTab(info); });
|
connect(edhRecCard, &QAction::triggered, this, [this, info] { this->tabSupervisor->addEdhrecTab(info); });
|
||||||
|
|
||||||
// filling out the related cards submenu
|
// filling out the related cards submenu
|
||||||
auto *relatedMenu = new QMenu(tr("Show Related cards"));
|
auto *relatedMenu = new QMenu(tr("Show Related cards"));
|
||||||
|
|
|
||||||
|
|
@ -720,11 +720,11 @@ TabDeckEditor *TabSupervisor::addDeckEditorTab(const DeckLoader *deckToOpen)
|
||||||
return tab;
|
return tab;
|
||||||
}
|
}
|
||||||
|
|
||||||
TabEdhRec *TabSupervisor::addEdhrecTab(const CardInfoPtr cardToQuery)
|
TabEdhRec *TabSupervisor::addEdhrecTab(const CardInfoPtr cardToQuery, bool isCommander)
|
||||||
{
|
{
|
||||||
TabEdhRec *tab = new TabEdhRec(this);
|
TabEdhRec *tab = new TabEdhRec(this);
|
||||||
if (cardToQuery)
|
if (cardToQuery)
|
||||||
tab->setCard(cardToQuery);
|
tab->setCard(cardToQuery, isCommander);
|
||||||
// connect(tab, &TabDeckEditor::deckEditorClosing, this, &TabSupervisor::deckEditorClosed);
|
// connect(tab, &TabDeckEditor::deckEditorClosing, this, &TabSupervisor::deckEditorClosed);
|
||||||
// connect(tab, &TabDeckEditor::openDeckEditor, this, &TabSupervisor::addDeckEditorTab);
|
// connect(tab, &TabDeckEditor::openDeckEditor, this, &TabSupervisor::addDeckEditorTab);
|
||||||
myAddTab(tab);
|
myAddTab(tab);
|
||||||
|
|
|
||||||
|
|
@ -148,7 +148,7 @@ signals:
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
TabDeckEditor *addDeckEditorTab(const DeckLoader *deckToOpen);
|
TabDeckEditor *addDeckEditorTab(const DeckLoader *deckToOpen);
|
||||||
TabEdhRec *addEdhrecTab(CardInfoPtr cardToQuery);
|
TabEdhRec *addEdhrecTab(CardInfoPtr cardToQuery, bool isCommander = false);
|
||||||
void openReplay(GameReplay *replay);
|
void openReplay(GameReplay *replay);
|
||||||
void maximizeMainWindow();
|
void maximizeMainWindow();
|
||||||
private slots:
|
private slots:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue