mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-09 17:44:01 -07:00
Lont.
This commit is contained in:
parent
3b21ea5bfe
commit
6edaa6db25
7 changed files with 41 additions and 44 deletions
|
|
@ -60,7 +60,7 @@ private:
|
||||||
QJsonObject oracleCard;
|
QJsonObject oracleCard;
|
||||||
int owned;
|
int owned;
|
||||||
int pinnedStatus;
|
int pinnedStatus;
|
||||||
//ArchidektApiResponsePrices prices;
|
// ArchidektApiResponsePrices prices;
|
||||||
QString rarity;
|
QString rarity;
|
||||||
QStringList globalCategories;
|
QStringList globalCategories;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -48,5 +48,4 @@ private:
|
||||||
QString mtgoCode;
|
QString mtgoCode;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif // COCKATRICE_ARCHIDEKT_API_RESPONSE_EDITION_H
|
#endif // COCKATRICE_ARCHIDEKT_API_RESPONSE_EDITION_H
|
||||||
|
|
|
||||||
|
|
@ -68,5 +68,4 @@ private:
|
||||||
QStringList customCards;
|
QStringList customCards;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif // COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_H
|
#endif // COCKATRICE_ARCHIDEKT_API_RESPONSE_DECK_H
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ void ArchidektApiResponseDeckListingContainer::fromJson(const QJsonObject &json)
|
||||||
theoryCrafted = json.value("theoryCrafted").toBool();
|
theoryCrafted = json.value("theoryCrafted").toBool();
|
||||||
game = json.value("game").toString();
|
game = json.value("game").toString();
|
||||||
hasDescription = json.value("hasDescription").toBool();
|
hasDescription = json.value("hasDescription").toBool();
|
||||||
//TODO
|
// TODO
|
||||||
tags = {};
|
tags = {};
|
||||||
parentFolderId = json.value("parentFolderId").toInt();
|
parentFolderId = json.value("parentFolderId").toInt();
|
||||||
owner.fromJson(json.value("owner").toObject());
|
owner.fromJson(json.value("owner").toObject());
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,8 @@ ArchidektApiResponseDeckDisplayWidget::ArchidektApiResponseDeckDisplayWidget(QWi
|
||||||
openInEditorButton = new QPushButton(this);
|
openInEditorButton = new QPushButton(this);
|
||||||
layout->addWidget(openInEditorButton);
|
layout->addWidget(openInEditorButton);
|
||||||
|
|
||||||
connect(openInEditorButton, &QPushButton::clicked, this, &ArchidektApiResponseDeckDisplayWidget::actOpenInDeckEditor);
|
connect(openInEditorButton, &QPushButton::clicked, this,
|
||||||
|
&ArchidektApiResponseDeckDisplayWidget::actOpenInDeckEditor);
|
||||||
|
|
||||||
scrollArea = new QScrollArea(this);
|
scrollArea = new QScrollArea(this);
|
||||||
scrollArea->setWidgetResizable(true);
|
scrollArea->setWidgetResizable(true);
|
||||||
|
|
@ -94,44 +95,44 @@ void ArchidektApiResponseDeckDisplayWidget::decklistModelReset()
|
||||||
constructZoneWidgetsFromDeckListModel();
|
constructZoneWidgetsFromDeckListModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ArchidektApiResponseDeckDisplayWidget::constructZoneWidgetsFromDeckListModel()
|
void ArchidektApiResponseDeckDisplayWidget::constructZoneWidgetsFromDeckListModel()
|
||||||
{
|
{
|
||||||
qDebug() << model->rowCount(model->getRoot());
|
qDebug() << model->rowCount(model->getRoot());
|
||||||
QSortFilterProxyModel proxy;
|
QSortFilterProxyModel proxy;
|
||||||
proxy.setSourceModel(model);
|
proxy.setSourceModel(model);
|
||||||
proxy.setSortRole(Qt::EditRole);
|
proxy.setSortRole(Qt::EditRole);
|
||||||
proxy.sort(1, Qt::AscendingOrder);
|
proxy.sort(1, Qt::AscendingOrder);
|
||||||
|
|
||||||
for (int i = 0; i < proxy.rowCount(); ++i) {
|
for (int i = 0; i < proxy.rowCount(); ++i) {
|
||||||
QModelIndex proxyIndex = proxy.index(i, 0);
|
QModelIndex proxyIndex = proxy.index(i, 0);
|
||||||
QModelIndex sourceIndex = proxy.mapToSource(proxyIndex);
|
QModelIndex sourceIndex = proxy.mapToSource(proxyIndex);
|
||||||
|
|
||||||
// Make a persistent index from the *source* model
|
// Make a persistent index from the *source* model
|
||||||
QPersistentModelIndex persistent(sourceIndex);
|
QPersistentModelIndex persistent(sourceIndex);
|
||||||
|
|
||||||
if (indexToWidgetMap.contains(persistent)) {
|
if (indexToWidgetMap.contains(persistent)) {
|
||||||
continue;
|
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);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
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)
|
void ArchidektApiResponseDeckDisplayWidget::resizeEvent(QResizeEvent *event)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -218,9 +218,9 @@ void TabArchidekt::processDeckResponse(QJsonObject reply)
|
||||||
currentPageDisplay->setLayout(currentPageLayout);
|
currentPageDisplay->setLayout(currentPageLayout);
|
||||||
|
|
||||||
auto display = new ArchidektApiResponseDeckDisplayWidget(currentPageDisplay, deckData, cardSizeSlider);
|
auto display = new ArchidektApiResponseDeckDisplayWidget(currentPageDisplay, deckData, cardSizeSlider);
|
||||||
connect(display, &ArchidektApiResponseDeckDisplayWidget::requestNavigation, this,
|
connect(display, &ArchidektApiResponseDeckDisplayWidget::requestNavigation, this, &TabArchidekt::actNavigatePage);
|
||||||
&TabArchidekt::actNavigatePage);
|
connect(display, &ArchidektApiResponseDeckDisplayWidget::openInDeckEditor, tabSupervisor,
|
||||||
connect(display, &ArchidektApiResponseDeckDisplayWidget::openInDeckEditor, tabSupervisor, &TabSupervisor::openDeckInNewTab);
|
&TabSupervisor::openDeckInNewTab);
|
||||||
currentPageLayout->addWidget(display);
|
currentPageLayout->addWidget(display);
|
||||||
|
|
||||||
mainLayout->addWidget(currentPageDisplay);
|
mainLayout->addWidget(currentPageDisplay);
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,8 @@
|
||||||
#include <QLineEdit>
|
#include <QLineEdit>
|
||||||
#include <QNetworkAccessManager>
|
#include <QNetworkAccessManager>
|
||||||
#include <QPushButton>
|
#include <QPushButton>
|
||||||
#include <libcockatrice/card/database/card_database.h>
|
|
||||||
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
#include <libcockatrice/card/database/card_database.h>
|
||||||
|
|
||||||
inline QString archidektApiLink = "https://archidekt.com/api/decks/v3/?name=";
|
inline QString archidektApiLink = "https://archidekt.com/api/decks/v3/?name=";
|
||||||
|
|
||||||
|
|
@ -59,5 +58,4 @@ private:
|
||||||
CardInfoPtr cardToQuery;
|
CardInfoPtr cardToQuery;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif // COCKATRICE_TAB_ARCHIDEKT_H
|
#endif // COCKATRICE_TAB_ARCHIDEKT_H
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue