This commit is contained in:
Lukas Brübach 2025-02-27 15:52:03 +01:00
parent 73533ce4bc
commit 8709fadd7b
31 changed files with 133 additions and 132 deletions

View file

@ -142,7 +142,7 @@ set(cockatrice_SOURCES
src/client/tabs/tab.cpp src/client/tabs/tab.cpp
src/client/tabs/tab_account.cpp src/client/tabs/tab_account.cpp
src/client/tabs/tab_admin.cpp src/client/tabs/tab_admin.cpp
src/client/tabs/tab_generic_deck_editor.cpp src/client/tabs/abstract_tab_deck_editor.cpp
src/client/tabs/tab_deck_editor.cpp src/client/tabs/tab_deck_editor.cpp
src/client/tabs/tab_deck_storage.cpp src/client/tabs/tab_deck_storage.cpp
src/client/tabs/tab_game.cpp src/client/tabs/tab_game.cpp

View file

@ -3,7 +3,7 @@
#include "../../../settings/cache_settings.h" #include "../../../settings/cache_settings.h"
#include "../../../settings/shortcuts_settings.h" #include "../../../settings/shortcuts_settings.h"
DeckEditorMenu::DeckEditorMenu(QWidget *parent, TabGenericDeckEditor *_deckEditor) DeckEditorMenu::DeckEditorMenu(QWidget *parent, AbstractTabDeckEditor *_deckEditor)
: QMenu(parent), deckEditor(_deckEditor) : QMenu(parent), deckEditor(_deckEditor)
{ {
aNewDeck = new QAction(QString(), this); aNewDeck = new QAction(QString(), this);
@ -62,7 +62,7 @@ DeckEditorMenu::DeckEditorMenu(QWidget *parent, TabGenericDeckEditor *_deckEdito
analyzeDeckMenu->addAction(aAnalyzeDeckTappedout); analyzeDeckMenu->addAction(aAnalyzeDeckTappedout);
aClose = new QAction(QString(), this); aClose = new QAction(QString(), this);
connect(aClose, &QAction::triggered, deckEditor, &TabGenericDeckEditor::closeRequest); connect(aClose, &QAction::triggered, deckEditor, &AbstractTabDeckEditor::closeRequest);
saveDeckToClipboardMenu = new QMenu(this); saveDeckToClipboardMenu = new QMenu(this);
saveDeckToClipboardMenu->addAction(aSaveDeckToClipboard); saveDeckToClipboardMenu->addAction(aSaveDeckToClipboard);

View file

@ -1,18 +1,18 @@
#ifndef DECK_EDITOR_MENU_H #ifndef DECK_EDITOR_MENU_H
#define DECK_EDITOR_MENU_H #define DECK_EDITOR_MENU_H
#include "../../tabs/tab_generic_deck_editor.h" #include "../../tabs/abstract_tab_deck_editor.h"
#include <QMenu> #include <QMenu>
class TabGenericDeckEditor; class AbstractTabDeckEditor;
class DeckEditorMenu : public QMenu class DeckEditorMenu : public QMenu
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit DeckEditorMenu(QWidget *parent, TabGenericDeckEditor *deckEditor); explicit DeckEditorMenu(QWidget *parent, AbstractTabDeckEditor *deckEditor);
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
QAction *aNewDeck, *aLoadDeck, *aClearRecents, *aSaveDeck, *aSaveDeckAs, *aLoadDeckFromClipboard, QAction *aNewDeck, *aLoadDeck, *aClearRecents, *aSaveDeck, *aSaveDeckAs, *aLoadDeckFromClipboard,
*aSaveDeckToClipboard, *aSaveDeckToClipboardNoSetNameAndNumber, *aSaveDeckToClipboardRaw, *aSaveDeckToClipboard, *aSaveDeckToClipboardNoSetNameAndNumber, *aSaveDeckToClipboardRaw,

View file

@ -1,4 +1,4 @@
#include "tab_generic_deck_editor.h" #include "abstract_tab_deck_editor.h"
#include "../../client/game_logic/abstract_client.h" #include "../../client/game_logic/abstract_client.h"
#include "../../client/tapped_out_interface.h" #include "../../client/tapped_out_interface.h"
@ -38,23 +38,46 @@
#include <QTreeView> #include <QTreeView>
#include <QUrl> #include <QUrl>
TabGenericDeckEditor::TabGenericDeckEditor(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor) AbstractTabDeckEditor::AbstractTabDeckEditor(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor)
{ {
setDockOptions(QMainWindow::AnimatedDocks | QMainWindow::AllowNestedDocks | QMainWindow::AllowTabbedDocks);
databaseDisplayDockWidget = new DeckEditorDatabaseDisplayWidget(this, this);
deckDockWidget = new DeckEditorDeckDockWidget(this, this);
cardInfoDockWidget = new DeckEditorCardInfoDockWidget(this, this);
filterDockWidget = new DeckEditorFilterDockWidget(this, this);
printingSelectorDockWidget = new DeckEditorPrintingSelectorDockWidget(this, this);
connect(deckDockWidget, &DeckEditorDeckDockWidget::deckChanged, this, &AbstractTabDeckEditor::onDeckChanged);
connect(deckDockWidget, &DeckEditorDeckDockWidget::cardChanged, this, &AbstractTabDeckEditor::updateCard);
connect(this, &AbstractTabDeckEditor::decrementCard, deckDockWidget, &DeckEditorDeckDockWidget::actDecrementCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::cardChanged, this,
&AbstractTabDeckEditor::updateCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::addCardToMainDeck, this,
&AbstractTabDeckEditor::actAddCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::addCardToSideboard, this,
&AbstractTabDeckEditor::actAddCardToSideboard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::decrementCardFromMainDeck, this,
&AbstractTabDeckEditor::actDecrementCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::decrementCardFromSideboard, this,
&AbstractTabDeckEditor::actDecrementCardFromSideboard);
connect(&SettingsCache::instance().shortcuts(), SIGNAL(shortCutChanged()), this, SLOT(refreshShortcuts()));
} }
void TabGenericDeckEditor::updateCard(CardInfoPtr _card) void AbstractTabDeckEditor::updateCard(CardInfoPtr _card)
{ {
cardInfoDockWidget->updateCard(_card); cardInfoDockWidget->updateCard(_card);
printingSelectorDockWidget->printingSelector->setCard(_card, DECK_ZONE_MAIN); printingSelectorDockWidget->printingSelector->setCard(_card, DECK_ZONE_MAIN);
} }
void TabGenericDeckEditor::onDeckChanged() void AbstractTabDeckEditor::onDeckChanged()
{ {
setModified(true); setModified(true);
deckMenu->setSaveStatus(!getDeckList()->isEmpty()); deckMenu->setSaveStatus(!getDeckList()->isEmpty());
} }
void TabGenericDeckEditor::addCardHelper(const CardInfoPtr info, QString zoneName) void AbstractTabDeckEditor::addCardHelper(const CardInfoPtr info, QString zoneName)
{ {
if (!info) if (!info)
return; return;
@ -69,7 +92,7 @@ void TabGenericDeckEditor::addCardHelper(const CardInfoPtr info, QString zoneNam
databaseDisplayDockWidget->searchEdit->setSelection(0, databaseDisplayDockWidget->searchEdit->text().length()); databaseDisplayDockWidget->searchEdit->setSelection(0, databaseDisplayDockWidget->searchEdit->text().length());
} }
void TabGenericDeckEditor::actAddCard(CardInfoPtr info) void AbstractTabDeckEditor::actAddCard(CardInfoPtr info)
{ {
if (QApplication::keyboardModifiers() & Qt::ControlModifier) if (QApplication::keyboardModifiers() & Qt::ControlModifier)
actAddCardToSideboard(info); actAddCardToSideboard(info);
@ -78,23 +101,23 @@ void TabGenericDeckEditor::actAddCard(CardInfoPtr info)
deckMenu->setSaveStatus(true); deckMenu->setSaveStatus(true);
} }
void TabGenericDeckEditor::actAddCardToSideboard(CardInfoPtr info) void AbstractTabDeckEditor::actAddCardToSideboard(CardInfoPtr info)
{ {
addCardHelper(info, DECK_ZONE_SIDE); addCardHelper(info, DECK_ZONE_SIDE);
deckMenu->setSaveStatus(true); deckMenu->setSaveStatus(true);
} }
void TabGenericDeckEditor::actDecrementCard(CardInfoPtr info) void AbstractTabDeckEditor::actDecrementCard(CardInfoPtr info)
{ {
emit decrementCard(info, DECK_ZONE_MAIN); emit decrementCard(info, DECK_ZONE_MAIN);
} }
void TabGenericDeckEditor::actDecrementCardFromSideboard(CardInfoPtr info) void AbstractTabDeckEditor::actDecrementCardFromSideboard(CardInfoPtr info)
{ {
emit decrementCard(info, DECK_ZONE_SIDE); emit decrementCard(info, DECK_ZONE_SIDE);
} }
void TabGenericDeckEditor::actSwapCard(CardInfoPtr info, QString zoneName) void AbstractTabDeckEditor::actSwapCard(CardInfoPtr info, QString zoneName)
{ {
QString providerId = CardDatabaseManager::getInstance()->getSetInfoForCard(info).getProperty("uuid"); QString providerId = CardDatabaseManager::getInstance()->getSetInfoForCard(info).getProperty("uuid");
QString collectorNumber = CardDatabaseManager::getInstance()->getSetInfoForCard(info).getProperty("num"); QString collectorNumber = CardDatabaseManager::getInstance()->getSetInfoForCard(info).getProperty("num");
@ -102,7 +125,7 @@ void TabGenericDeckEditor::actSwapCard(CardInfoPtr info, QString zoneName)
deckDockWidget->deckModel->findCard(info->getName(), zoneName, providerId, collectorNumber)); deckDockWidget->deckModel->findCard(info->getName(), zoneName, providerId, collectorNumber));
} }
void TabGenericDeckEditor::setDeck(DeckLoader *_deck) void AbstractTabDeckEditor::setDeck(DeckLoader *_deck)
{ {
deckDockWidget->setDeck(_deck); deckDockWidget->setDeck(_deck);
PictureLoader::cacheCardPixmaps(CardDatabaseManager::getInstance()->getCards(getDeckList()->getCardList())); PictureLoader::cacheCardPixmaps(CardDatabaseManager::getInstance()->getCards(getDeckList()->getCardList()));
@ -113,12 +136,12 @@ void TabGenericDeckEditor::setDeck(DeckLoader *_deck)
deckDockWidget->setVisible(aDeckDockVisible->isChecked()); deckDockWidget->setVisible(aDeckDockVisible->isChecked());
} }
DeckLoader *TabGenericDeckEditor::getDeckList() const DeckLoader *AbstractTabDeckEditor::getDeckList() const
{ {
return deckDockWidget->getDeckList(); return deckDockWidget->getDeckList();
} }
void TabGenericDeckEditor::setModified(bool _modified) void AbstractTabDeckEditor::setModified(bool _modified)
{ {
modified = _modified; modified = _modified;
emit tabTextChanged(this, getTabText()); emit tabTextChanged(this, getTabText());
@ -127,13 +150,13 @@ void TabGenericDeckEditor::setModified(bool _modified)
/** /**
* @brief Returns true if this tab is a blank newly opened tab, as if it was just created with the `New Deck` action. * @brief Returns true if this tab is a blank newly opened tab, as if it was just created with the `New Deck` action.
*/ */
bool TabGenericDeckEditor::isBlankNewDeck() const bool AbstractTabDeckEditor::isBlankNewDeck() const
{ {
DeckLoader *deck = getDeckList(); DeckLoader *deck = getDeckList();
return !modified && deck->hasNotBeenLoaded(); return !modified && deck->hasNotBeenLoaded();
} }
void TabGenericDeckEditor::actNewDeck() void AbstractTabDeckEditor::actNewDeck()
{ {
auto deckOpenLocation = confirmOpen(false); auto deckOpenLocation = confirmOpen(false);
@ -149,7 +172,7 @@ void TabGenericDeckEditor::actNewDeck()
cleanDeckAndResetModified(); cleanDeckAndResetModified();
} }
void TabGenericDeckEditor::cleanDeckAndResetModified() void AbstractTabDeckEditor::cleanDeckAndResetModified()
{ {
deckMenu->setSaveStatus(false); deckMenu->setSaveStatus(false);
deckDockWidget->cleanDeck(); deckDockWidget->cleanDeck();
@ -165,7 +188,7 @@ void TabGenericDeckEditor::cleanDeckAndResetModified()
* *
* @returns An enum that indicates if and where to load the deck * @returns An enum that indicates if and where to load the deck
*/ */
TabGenericDeckEditor::DeckOpenLocation TabGenericDeckEditor::confirmOpen(const bool openInSameTabIfBlank) AbstractTabDeckEditor::DeckOpenLocation AbstractTabDeckEditor::confirmOpen(const bool openInSameTabIfBlank)
{ {
// handle `openDeckInNewTab` setting // handle `openDeckInNewTab` setting
if (SettingsCache::instance().getOpenDeckInNewTab()) { if (SettingsCache::instance().getOpenDeckInNewTab()) {
@ -210,7 +233,7 @@ TabGenericDeckEditor::DeckOpenLocation TabGenericDeckEditor::confirmOpen(const b
* *
* @returns A QMessageBox that can be further modified * @returns A QMessageBox that can be further modified
*/ */
QMessageBox *TabGenericDeckEditor::createSaveConfirmationWindow() QMessageBox *AbstractTabDeckEditor::createSaveConfirmationWindow()
{ {
QMessageBox *msgBox = new QMessageBox(this); QMessageBox *msgBox = new QMessageBox(this);
msgBox->setIcon(QMessageBox::Warning); msgBox->setIcon(QMessageBox::Warning);
@ -220,7 +243,7 @@ QMessageBox *TabGenericDeckEditor::createSaveConfirmationWindow()
return msgBox; return msgBox;
} }
void TabGenericDeckEditor::actLoadDeck() void AbstractTabDeckEditor::actLoadDeck()
{ {
auto deckOpenLocation = confirmOpen(); auto deckOpenLocation = confirmOpen();
@ -237,7 +260,7 @@ void TabGenericDeckEditor::actLoadDeck()
deckDockWidget->updateBannerCardComboBox(); deckDockWidget->updateBannerCardComboBox();
} }
void TabGenericDeckEditor::actOpenRecent(const QString &fileName) void AbstractTabDeckEditor::actOpenRecent(const QString &fileName)
{ {
auto deckOpenLocation = confirmOpen(); auto deckOpenLocation = confirmOpen();
@ -253,7 +276,7 @@ void TabGenericDeckEditor::actOpenRecent(const QString &fileName)
* @param fileName The path of the deck to open * @param fileName The path of the deck to open
* @param deckOpenLocation Which tab to open the deck * @param deckOpenLocation Which tab to open the deck
*/ */
void TabGenericDeckEditor::openDeckFromFile(const QString &fileName, DeckOpenLocation deckOpenLocation) void AbstractTabDeckEditor::openDeckFromFile(const QString &fileName, DeckOpenLocation deckOpenLocation)
{ {
DeckLoader::FileFormat fmt = DeckLoader::getFormatFromName(fileName); DeckLoader::FileFormat fmt = DeckLoader::getFormatFromName(fileName);
@ -273,7 +296,7 @@ void TabGenericDeckEditor::openDeckFromFile(const QString &fileName, DeckOpenLoc
deckMenu->setSaveStatus(true); deckMenu->setSaveStatus(true);
} }
bool TabGenericDeckEditor::actSaveDeck() bool AbstractTabDeckEditor::actSaveDeck()
{ {
DeckLoader *const deck = getDeckList(); DeckLoader *const deck = getDeckList();
if (deck->getLastRemoteDeckId() != -1) { if (deck->getLastRemoteDeckId() != -1) {
@ -305,7 +328,7 @@ bool TabGenericDeckEditor::actSaveDeck()
return false; return false;
} }
bool TabGenericDeckEditor::actSaveDeckAs() bool AbstractTabDeckEditor::actSaveDeckAs()
{ {
QFileDialog dialog(this, tr("Save deck")); QFileDialog dialog(this, tr("Save deck"));
dialog.setDirectory(SettingsCache::instance().getDeckPath()); dialog.setDirectory(SettingsCache::instance().getDeckPath());
@ -332,7 +355,7 @@ bool TabGenericDeckEditor::actSaveDeckAs()
return true; return true;
} }
void TabGenericDeckEditor::saveDeckRemoteFinished(const Response &response) void AbstractTabDeckEditor::saveDeckRemoteFinished(const Response &response)
{ {
if (response.response_code() != Response::RespOk) if (response.response_code() != Response::RespOk)
QMessageBox::critical(this, tr("Error"), tr("The deck could not be saved.")); QMessageBox::critical(this, tr("Error"), tr("The deck could not be saved."));
@ -340,7 +363,7 @@ void TabGenericDeckEditor::saveDeckRemoteFinished(const Response &response)
setModified(false); setModified(false);
} }
void TabGenericDeckEditor::actLoadDeckFromClipboard() void AbstractTabDeckEditor::actLoadDeckFromClipboard()
{ {
auto deckOpenLocation = confirmOpen(); auto deckOpenLocation = confirmOpen();
@ -362,7 +385,7 @@ void TabGenericDeckEditor::actLoadDeckFromClipboard()
deckMenu->setSaveStatus(true); deckMenu->setSaveStatus(true);
} }
void TabGenericDeckEditor::actSaveDeckToClipboard() void AbstractTabDeckEditor::actSaveDeckToClipboard()
{ {
QString buffer; QString buffer;
QTextStream stream(&buffer); QTextStream stream(&buffer);
@ -371,7 +394,7 @@ void TabGenericDeckEditor::actSaveDeckToClipboard()
QApplication::clipboard()->setText(buffer, QClipboard::Selection); QApplication::clipboard()->setText(buffer, QClipboard::Selection);
} }
void TabGenericDeckEditor::actSaveDeckToClipboardNoSetNameAndNumber() void AbstractTabDeckEditor::actSaveDeckToClipboardNoSetNameAndNumber()
{ {
QString buffer; QString buffer;
QTextStream stream(&buffer); QTextStream stream(&buffer);
@ -380,7 +403,7 @@ void TabGenericDeckEditor::actSaveDeckToClipboardNoSetNameAndNumber()
QApplication::clipboard()->setText(buffer, QClipboard::Selection); QApplication::clipboard()->setText(buffer, QClipboard::Selection);
} }
void TabGenericDeckEditor::actSaveDeckToClipboardRaw() void AbstractTabDeckEditor::actSaveDeckToClipboardRaw()
{ {
QString buffer; QString buffer;
QTextStream stream(&buffer); QTextStream stream(&buffer);
@ -389,7 +412,7 @@ void TabGenericDeckEditor::actSaveDeckToClipboardRaw()
QApplication::clipboard()->setText(buffer, QClipboard::Selection); QApplication::clipboard()->setText(buffer, QClipboard::Selection);
} }
void TabGenericDeckEditor::actSaveDeckToClipboardRawNoSetNameAndNumber() void AbstractTabDeckEditor::actSaveDeckToClipboardRawNoSetNameAndNumber()
{ {
QString buffer; QString buffer;
QTextStream stream(&buffer); QTextStream stream(&buffer);
@ -398,7 +421,7 @@ void TabGenericDeckEditor::actSaveDeckToClipboardRawNoSetNameAndNumber()
QApplication::clipboard()->setText(buffer, QClipboard::Selection); QApplication::clipboard()->setText(buffer, QClipboard::Selection);
} }
void TabGenericDeckEditor::actPrintDeck() void AbstractTabDeckEditor::actPrintDeck()
{ {
auto *dlg = new QPrintPreviewDialog(this); auto *dlg = new QPrintPreviewDialog(this);
connect(dlg, SIGNAL(paintRequested(QPrinter *)), deckDockWidget->deckModel, SLOT(printDeckList(QPrinter *))); connect(dlg, SIGNAL(paintRequested(QPrinter *)), deckDockWidget->deckModel, SLOT(printDeckList(QPrinter *)));
@ -406,7 +429,7 @@ void TabGenericDeckEditor::actPrintDeck()
} }
// Action called when export deck to decklist menu item is pressed. // Action called when export deck to decklist menu item is pressed.
void TabGenericDeckEditor::actExportDeckDecklist() void AbstractTabDeckEditor::actExportDeckDecklist()
{ {
// Get the decklist class for the deck. // Get the decklist class for the deck.
DeckLoader *const deck = getDeckList(); DeckLoader *const deck = getDeckList();
@ -435,27 +458,27 @@ void TabGenericDeckEditor::actExportDeckDecklist()
} }
} }
void TabGenericDeckEditor::actAnalyzeDeckDeckstats() void AbstractTabDeckEditor::actAnalyzeDeckDeckstats()
{ {
auto *interface = new DeckStatsInterface(*databaseDisplayDockWidget->databaseModel->getDatabase(), auto *interface = new DeckStatsInterface(*databaseDisplayDockWidget->databaseModel->getDatabase(),
this); // it deletes itself when done this); // it deletes itself when done
interface->analyzeDeck(getDeckList()); interface->analyzeDeck(getDeckList());
} }
void TabGenericDeckEditor::actAnalyzeDeckTappedout() void AbstractTabDeckEditor::actAnalyzeDeckTappedout()
{ {
auto *interface = new TappedOutInterface(*databaseDisplayDockWidget->databaseModel->getDatabase(), auto *interface = new TappedOutInterface(*databaseDisplayDockWidget->databaseModel->getDatabase(),
this); // it deletes itself when done this); // it deletes itself when done
interface->analyzeDeck(getDeckList()); interface->analyzeDeck(getDeckList());
} }
void TabGenericDeckEditor::filterTreeChanged(FilterTree *filterTree) void AbstractTabDeckEditor::filterTreeChanged(FilterTree *filterTree)
{ {
databaseDisplayDockWidget->setFilterTree(filterTree); databaseDisplayDockWidget->setFilterTree(filterTree);
} }
// Method uses to sync docks state with menu items state // Method uses to sync docks state with menu items state
bool TabGenericDeckEditor::eventFilter(QObject *o, QEvent *e) bool AbstractTabDeckEditor::eventFilter(QObject *o, QEvent *e)
{ {
if (e->type() == QEvent::Close) { if (e->type() == QEvent::Close) {
if (o == cardInfoDockWidget) { if (o == cardInfoDockWidget) {
@ -484,7 +507,7 @@ bool TabGenericDeckEditor::eventFilter(QObject *o, QEvent *e)
return false; return false;
} }
bool TabGenericDeckEditor::confirmClose() bool AbstractTabDeckEditor::confirmClose()
{ {
if (modified) { if (modified) {
tabSupervisor->setCurrentWidget(this); tabSupervisor->setCurrentWidget(this);
@ -497,7 +520,7 @@ bool TabGenericDeckEditor::confirmClose()
return true; return true;
} }
void TabGenericDeckEditor::closeRequest(bool forced) void AbstractTabDeckEditor::closeRequest(bool forced)
{ {
if (!forced && !confirmClose()) { if (!forced && !confirmClose()) {
return; return;

View file

@ -40,12 +40,12 @@ class QDockWidget;
class QMenu; class QMenu;
class QAction; class QAction;
class TabGenericDeckEditor : public Tab class AbstractTabDeckEditor : public Tab
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit TabGenericDeckEditor(TabSupervisor *_tabSupervisor); explicit AbstractTabDeckEditor(TabSupervisor *_tabSupervisor);
// UI and Navigation // UI and Navigation
virtual void createMenus() = 0; virtual void createMenus() = 0;
@ -81,7 +81,7 @@ public slots:
signals: signals:
void openDeckEditor(const DeckLoader *deckLoader); void openDeckEditor(const DeckLoader *deckLoader);
void deckEditorClosing(TabGenericDeckEditor *tab); void deckEditorClosing(AbstractTabDeckEditor *tab);
void decrementCard(CardInfoPtr card, QString zoneName); void decrementCard(CardInfoPtr card, QString zoneName);
protected slots: protected slots:

View file

@ -39,37 +39,15 @@
#include <QTreeView> #include <QTreeView>
#include <QVBoxLayout> #include <QVBoxLayout>
TabDeckEditor::TabDeckEditor(TabSupervisor *_tabSupervisor) : TabGenericDeckEditor(_tabSupervisor) TabDeckEditor::TabDeckEditor(TabSupervisor *_tabSupervisor) : AbstractTabDeckEditor(_tabSupervisor)
{ {
setObjectName("TabDeckEditor"); setObjectName("TabDeckEditor");
setDockOptions(QMainWindow::AnimatedDocks | QMainWindow::AllowNestedDocks | QMainWindow::AllowTabbedDocks);
databaseDisplayDockWidget = new DeckEditorDatabaseDisplayWidget(this, this);
deckDockWidget = new DeckEditorDeckDockWidget(this, this);
cardInfoDockWidget = new DeckEditorCardInfoDockWidget(this, this);
filterDockWidget = new DeckEditorFilterDockWidget(this, this);
printingSelectorDockWidget = new DeckEditorPrintingSelectorDockWidget(this, this);
connect(deckDockWidget, &DeckEditorDeckDockWidget::deckChanged, this, &TabGenericDeckEditor::onDeckChanged);
connect(deckDockWidget, &DeckEditorDeckDockWidget::cardChanged, this, &TabGenericDeckEditor::updateCard);
connect(this, &TabGenericDeckEditor::decrementCard, deckDockWidget, &DeckEditorDeckDockWidget::actDecrementCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::cardChanged, this,
&TabGenericDeckEditor::updateCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::addCardToMainDeck, this,
&TabGenericDeckEditor::actAddCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::addCardToSideboard, this,
&TabGenericDeckEditor::actAddCardToSideboard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::decrementCardFromMainDeck, this,
&TabGenericDeckEditor::actDecrementCard);
connect(databaseDisplayDockWidget, &DeckEditorDatabaseDisplayWidget::decrementCardFromSideboard, this,
&TabGenericDeckEditor::actDecrementCardFromSideboard);
TabDeckEditor::createMenus(); TabDeckEditor::createMenus();
installEventFilter(this); installEventFilter(this);
TabDeckEditor::retranslateUi(); TabDeckEditor::retranslateUi();
connect(&SettingsCache::instance().shortcuts(), SIGNAL(shortCutChanged()), this, SLOT(refreshShortcuts()));
TabDeckEditor::refreshShortcuts(); TabDeckEditor::refreshShortcuts();
TabDeckEditor::loadLayout(); TabDeckEditor::loadLayout();

View file

@ -4,7 +4,7 @@
#include "../../game/cards/card_database.h" #include "../../game/cards/card_database.h"
#include "../game_logic/key_signals.h" #include "../game_logic/key_signals.h"
#include "../ui/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" #include "../ui/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h"
#include "tab_generic_deck_editor.h" #include "abstract_tab_deck_editor.h"
class CardDatabaseModel; class CardDatabaseModel;
class CardDatabaseDisplayModel; class CardDatabaseDisplayModel;
@ -13,7 +13,7 @@ class DeckListModel;
class QLabel; class QLabel;
class DeckLoader; class DeckLoader;
class TabDeckEditor : public TabGenericDeckEditor class TabDeckEditor : public AbstractTabDeckEditor
{ {
Q_OBJECT Q_OBJECT

View file

@ -201,7 +201,7 @@ void TabSupervisor::retranslateUi()
QListIterator<TabGame *> replayIterator(replayTabs); QListIterator<TabGame *> replayIterator(replayTabs);
while (replayIterator.hasNext()) while (replayIterator.hasNext())
tabs.append(replayIterator.next()); tabs.append(replayIterator.next());
QListIterator<TabGenericDeckEditor *> deckEditorIterator(deckEditorTabs); QListIterator<AbstractTabDeckEditor *> deckEditorIterator(deckEditorTabs);
while (deckEditorIterator.hasNext()) while (deckEditorIterator.hasNext())
tabs.append(deckEditorIterator.next()); tabs.append(deckEditorIterator.next());
QMapIterator<QString, TabMessage *> messageIterator(messageTabs); QMapIterator<QString, TabMessage *> messageIterator(messageTabs);
@ -242,7 +242,7 @@ bool TabSupervisor::closeRequest()
} }
} }
for (TabGenericDeckEditor *tab : deckEditorTabs) { for (AbstractTabDeckEditor *tab : deckEditorTabs) {
if (!tab->confirmClose()) if (!tab->confirmClose())
return false; return false;
} }
@ -706,8 +706,8 @@ TabDeckEditor *TabSupervisor::addDeckEditorTab(const DeckLoader *deckToOpen)
auto *tab = new TabDeckEditor(this); auto *tab = new TabDeckEditor(this);
if (deckToOpen) if (deckToOpen)
tab->setDeck(new DeckLoader(*deckToOpen)); tab->setDeck(new DeckLoader(*deckToOpen));
connect(tab, &TabGenericDeckEditor::deckEditorClosing, this, &TabSupervisor::deckEditorClosed); connect(tab, &AbstractTabDeckEditor::deckEditorClosing, this, &TabSupervisor::deckEditorClosed);
connect(tab, &TabGenericDeckEditor::openDeckEditor, this, &TabSupervisor::addDeckEditorTab); connect(tab, &AbstractTabDeckEditor::openDeckEditor, this, &TabSupervisor::addDeckEditorTab);
myAddTab(tab); myAddTab(tab);
deckEditorTabs.append(tab); deckEditorTabs.append(tab);
setCurrentWidget(tab); setCurrentWidget(tab);
@ -726,7 +726,7 @@ TabEdhRec *TabSupervisor::addEdhrecTab(const CardInfoPtr &cardToQuery, bool isCo
return tab; return tab;
} }
void TabSupervisor::deckEditorClosed(TabGenericDeckEditor *tab) void TabSupervisor::deckEditorClosed(AbstractTabDeckEditor *tab)
{ {
if (tab == currentWidget()) if (tab == currentWidget())
emit setMenu(); emit setMenu();

View file

@ -3,8 +3,8 @@
#include "../../deck/deck_loader.h" #include "../../deck/deck_loader.h"
#include "../../server/user/user_list_proxy.h" #include "../../server/user/user_list_proxy.h"
#include "abstract_tab_deck_editor.h"
#include "api/edhrec/tab_edhrec.h" #include "api/edhrec/tab_edhrec.h"
#include "tab_generic_deck_editor.h"
#include "visual_deck_storage/tab_deck_storage_visual.h" #include "visual_deck_storage/tab_deck_storage_visual.h"
#include <QAbstractButton> #include <QAbstractButton>
@ -88,7 +88,7 @@ private:
QMap<int, TabGame *> gameTabs; QMap<int, TabGame *> gameTabs;
QList<TabGame *> replayTabs; QList<TabGame *> replayTabs;
QMap<QString, TabMessage *> messageTabs; QMap<QString, TabMessage *> messageTabs;
QList<TabGenericDeckEditor *> deckEditorTabs; QList<AbstractTabDeckEditor *> deckEditorTabs;
bool isLocalGame; bool isLocalGame;
QAction *aTabDeckEditor, *aTabVisualDeckStorage, *aTabServer, *aTabAccount, *aTabDeckStorage, *aTabReplays, QAction *aTabDeckEditor, *aTabVisualDeckStorage, *aTabServer, *aTabAccount, *aTabDeckStorage, *aTabReplays,
@ -133,7 +133,7 @@ public:
{ {
return roomTabs; return roomTabs;
} }
QList<TabGenericDeckEditor *> getDeckEditorTabs() const QList<AbstractTabDeckEditor *> getDeckEditorTabs() const
{ {
return deckEditorTabs; return deckEditorTabs;
} }
@ -175,7 +175,7 @@ private slots:
void processUserLeft(const QString &userName); void processUserLeft(const QString &userName);
void processUserJoined(const ServerInfo_User &userInfo); void processUserJoined(const ServerInfo_User &userInfo);
void talkLeft(TabMessage *tab); void talkLeft(TabMessage *tab);
void deckEditorClosed(TabGenericDeckEditor *tab); void deckEditorClosed(AbstractTabDeckEditor *tab);
void tabUserEvent(bool globalEvent); void tabUserEvent(bool globalEvent);
void updateTabText(Tab *tab, const QString &newTabText); void updateTabText(Tab *tab, const QString &newTabText);
void processRoomEvent(const RoomEvent &event); void processRoomEvent(const RoomEvent &event);

View file

@ -296,7 +296,7 @@ QMenu *CardInfoPictureWidget::createAddToOpenDeckMenu()
auto addToOpenDeckMenu = new QMenu(tr("Add card to deck")); auto addToOpenDeckMenu = new QMenu(tr("Add card to deck"));
auto *mainWindow = qobject_cast<MainWindow *>(window()); auto *mainWindow = qobject_cast<MainWindow *>(window());
QList<TabGenericDeckEditor *> deckEditorTabs = mainWindow->getTabSupervisor()->getDeckEditorTabs(); QList<AbstractTabDeckEditor *> deckEditorTabs = mainWindow->getTabSupervisor()->getDeckEditorTabs();
if (deckEditorTabs.isEmpty()) { if (deckEditorTabs.isEmpty()) {
addToOpenDeckMenu->setEnabled(false); addToOpenDeckMenu->setEnabled(false);

View file

@ -4,7 +4,7 @@
#include <QVBoxLayout> #include <QVBoxLayout>
DeckEditorCardInfoDockWidget::DeckEditorCardInfoDockWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor) DeckEditorCardInfoDockWidget::DeckEditorCardInfoDockWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor)
: QDockWidget(parent), deckEditor(_deckEditor) : QDockWidget(parent), deckEditor(_deckEditor)
{ {
setObjectName("cardInfoDock"); setObjectName("cardInfoDock");
@ -31,7 +31,7 @@ void DeckEditorCardInfoDockWidget::createCardInfoDock()
setWidget(cardInfoDockContents); setWidget(cardInfoDockContents);
installEventFilter(deckEditor); installEventFilter(deckEditor);
connect(this, &QDockWidget::topLevelChanged, deckEditor, &TabGenericDeckEditor::dockTopLevelChanged); connect(this, &QDockWidget::topLevelChanged, deckEditor, &AbstractTabDeckEditor::dockTopLevelChanged);
} }
void DeckEditorCardInfoDockWidget::updateCard(CardInfoPtr _card) void DeckEditorCardInfoDockWidget::updateCard(CardInfoPtr _card)

View file

@ -1,21 +1,21 @@
#ifndef DECK_EDITOR_CARD_INFO_DOCK_WIDGET_H #ifndef DECK_EDITOR_CARD_INFO_DOCK_WIDGET_H
#define DECK_EDITOR_CARD_INFO_DOCK_WIDGET_H #define DECK_EDITOR_CARD_INFO_DOCK_WIDGET_H
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include "../cards/card_info_frame_widget.h" #include "../cards/card_info_frame_widget.h"
#include <QDockWidget> #include <QDockWidget>
class TabGenericDeckEditor; class AbstractTabDeckEditor;
class DeckEditorCardInfoDockWidget : public QDockWidget class DeckEditorCardInfoDockWidget : public QDockWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit DeckEditorCardInfoDockWidget(QWidget *parent, TabGenericDeckEditor *deckEditor); explicit DeckEditorCardInfoDockWidget(QWidget *parent, AbstractTabDeckEditor *deckEditor);
void createCardInfoDock(); void createCardInfoDock();
void retranslateUi(); void retranslateUi();
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
CardInfoFrameWidget *cardInfo; CardInfoFrameWidget *cardInfo;
public slots: public slots:

View file

@ -2,7 +2,7 @@
#include "../../../../game/cards/card_database_manager.h" #include "../../../../game/cards/card_database_manager.h"
#include "../../../../settings/cache_settings.h" #include "../../../../settings/cache_settings.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include "../../../tabs/tab_supervisor.h" #include "../../../tabs/tab_supervisor.h"
#include <QClipboard> #include <QClipboard>
@ -20,7 +20,7 @@ static bool canBeCommander(const CardInfoPtr &cardInfo)
cardInfo->getText().contains("can be your commander", Qt::CaseInsensitive); cardInfo->getText().contains("can be your commander", Qt::CaseInsensitive);
} }
DeckEditorDatabaseDisplayWidget::DeckEditorDatabaseDisplayWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor) DeckEditorDatabaseDisplayWidget::DeckEditorDatabaseDisplayWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor)
: QWidget(parent), deckEditor(_deckEditor) : QWidget(parent), deckEditor(_deckEditor)
{ {
setObjectName("centralWidget"); setObjectName("centralWidget");

View file

@ -4,19 +4,19 @@
#include "../../../../deck/custom_line_edit.h" #include "../../../../deck/custom_line_edit.h"
#include "../../../../game/cards/card_database_model.h" #include "../../../../game/cards/card_database_model.h"
#include "../../../game_logic/key_signals.h" #include "../../../game_logic/key_signals.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include <QHBoxLayout> #include <QHBoxLayout>
#include <QWidget> #include <QWidget>
class TabGenericDeckEditor; class AbstractTabDeckEditor;
class DeckEditorDatabaseDisplayWidget : public QWidget class DeckEditorDatabaseDisplayWidget : public QWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit DeckEditorDatabaseDisplayWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor); explicit DeckEditorDatabaseDisplayWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor);
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
SearchLineEdit *searchEdit; SearchLineEdit *searchEdit;
CardDatabaseModel *databaseModel; CardDatabaseModel *databaseModel;
CardDatabaseDisplayModel *databaseDisplayModel; CardDatabaseDisplayModel *databaseDisplayModel;

View file

@ -11,7 +11,7 @@
#include <QTextEdit> #include <QTextEdit>
#include <trice_limits.h> #include <trice_limits.h>
DeckEditorDeckDockWidget::DeckEditorDeckDockWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor) DeckEditorDeckDockWidget::DeckEditorDeckDockWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor)
: QDockWidget(parent), deckEditor(_deckEditor) : QDockWidget(parent), deckEditor(_deckEditor)
{ {
setObjectName("deckDock"); setObjectName("deckDock");
@ -494,7 +494,7 @@ void DeckEditorDeckDockWidget::decklistCustomMenu(QPoint point)
QAction *selectPrinting = menu.addAction(tr("Select Printing")); QAction *selectPrinting = menu.addAction(tr("Select Printing"));
connect(selectPrinting, &QAction::triggered, deckEditor, &TabGenericDeckEditor::showPrintingSelector); connect(selectPrinting, &QAction::triggered, deckEditor, &AbstractTabDeckEditor::showPrintingSelector);
menu.exec(deckView->mapToGlobal(point)); menu.exec(deckView->mapToGlobal(point));
} }

View file

@ -4,7 +4,7 @@
#include "../../../../deck/custom_line_edit.h" #include "../../../../deck/custom_line_edit.h"
#include "../../../../game/cards/card_database.h" #include "../../../../game/cards/card_database.h"
#include "../../../game_logic/key_signals.h" #include "../../../game_logic/key_signals.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include "../visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" #include "../visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h"
#include <QComboBox> #include <QComboBox>
@ -14,12 +14,12 @@
#include <QTreeView> #include <QTreeView>
class DeckListModel; class DeckListModel;
class TabGenericDeckEditor; class AbstractTabDeckEditor;
class DeckEditorDeckDockWidget : public QDockWidget class DeckEditorDeckDockWidget : public QDockWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit DeckEditorDeckDockWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor); explicit DeckEditorDeckDockWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor);
DeckListModel *deckModel; DeckListModel *deckModel;
QTreeView *deckView; QTreeView *deckView;
QComboBox *bannerCardComboBox; QComboBox *bannerCardComboBox;
@ -53,7 +53,7 @@ signals:
void cardChanged(CardInfoPtr _card); void cardChanged(CardInfoPtr _card);
private: private:
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
KeySignals deckViewKeySignals; KeySignals deckViewKeySignals;
QLabel *nameLabel; QLabel *nameLabel;
LineEditUnfocusable *nameEdit; LineEditUnfocusable *nameEdit;

View file

@ -9,7 +9,7 @@
#include <QMenu> #include <QMenu>
#include <QToolButton> #include <QToolButton>
DeckEditorFilterDockWidget::DeckEditorFilterDockWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor) DeckEditorFilterDockWidget::DeckEditorFilterDockWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor)
: QDockWidget(parent), deckEditor(_deckEditor) : QDockWidget(parent), deckEditor(_deckEditor)
{ {
setObjectName("filterDock"); setObjectName("filterDock");
@ -81,7 +81,7 @@ void DeckEditorFilterDockWidget::createFiltersDock()
setWidget(filterDockContents); setWidget(filterDockContents);
installEventFilter(deckEditor); installEventFilter(deckEditor);
connect(this, &QDockWidget::topLevelChanged, deckEditor, &TabGenericDeckEditor::dockTopLevelChanged); connect(this, &QDockWidget::topLevelChanged, deckEditor, &AbstractTabDeckEditor::dockTopLevelChanged);
} }
void DeckEditorFilterDockWidget::filterViewCustomContextMenu(const QPoint &point) void DeckEditorFilterDockWidget::filterViewCustomContextMenu(const QPoint &point)

View file

@ -2,24 +2,24 @@
#define DECK_EDITOR_FILTER_DOCK_WIDGET_H #define DECK_EDITOR_FILTER_DOCK_WIDGET_H
#include "../../../game_logic/key_signals.h" #include "../../../game_logic/key_signals.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include <QDockWidget> #include <QDockWidget>
#include <QTreeView> #include <QTreeView>
class FilterTreeModel; class FilterTreeModel;
class TabGenericDeckEditor; class AbstractTabDeckEditor;
class DeckEditorFilterDockWidget : public QDockWidget class DeckEditorFilterDockWidget : public QDockWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit DeckEditorFilterDockWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor); explicit DeckEditorFilterDockWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor);
void createFiltersDock(); void createFiltersDock();
void retranslateUi(); void retranslateUi();
QAction *aClearFilterAll, *aClearFilterOne; QAction *aClearFilterAll, *aClearFilterOne;
private: private:
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
FilterTreeModel *filterModel; FilterTreeModel *filterModel;
QTreeView *filterView; QTreeView *filterView;
KeySignals filterViewKeySignals; KeySignals filterViewKeySignals;

View file

@ -1,11 +1,11 @@
#include "deck_editor_printing_selector_dock_widget.h" #include "deck_editor_printing_selector_dock_widget.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include <QVBoxLayout> #include <QVBoxLayout>
DeckEditorPrintingSelectorDockWidget::DeckEditorPrintingSelectorDockWidget(QWidget *parent, DeckEditorPrintingSelectorDockWidget::DeckEditorPrintingSelectorDockWidget(QWidget *parent,
TabGenericDeckEditor *_deckEditor) AbstractTabDeckEditor *_deckEditor)
: QDockWidget(parent), deckEditor(_deckEditor) : QDockWidget(parent), deckEditor(_deckEditor)
{ {
setObjectName("printingSelectorDock"); setObjectName("printingSelectorDock");
@ -33,7 +33,7 @@ void DeckEditorPrintingSelectorDockWidget::createPrintingSelectorDock()
setWidget(printingSelectorDockContents); setWidget(printingSelectorDockContents);
installEventFilter(deckEditor); installEventFilter(deckEditor);
connect(this, &QDockWidget::topLevelChanged, deckEditor, &TabGenericDeckEditor::dockTopLevelChanged); connect(this, &QDockWidget::topLevelChanged, deckEditor, &AbstractTabDeckEditor::dockTopLevelChanged);
} }
void DeckEditorPrintingSelectorDockWidget::retranslateUi() void DeckEditorPrintingSelectorDockWidget::retranslateUi()

View file

@ -1,7 +1,7 @@
#ifndef DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H #ifndef DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H
#define DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H #define DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include "../printing_selector/printing_selector.h" #include "../printing_selector/printing_selector.h"
#include <QDockWidget> #include <QDockWidget>
@ -11,13 +11,13 @@ class DeckEditorPrintingSelectorDockWidget : public QDockWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit DeckEditorPrintingSelectorDockWidget(QWidget *parent, TabGenericDeckEditor *_deckEditor); explicit DeckEditorPrintingSelectorDockWidget(QWidget *parent, AbstractTabDeckEditor *_deckEditor);
void createPrintingSelectorDock(); void createPrintingSelectorDock();
void retranslateUi(); void retranslateUi();
PrintingSelector *printingSelector; PrintingSelector *printingSelector;
private: private:
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
}; };
#endif // DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H #endif // DECK_EDITOR_PRINTING_SELECTOR_DOCK_WIDGET_H

View file

@ -19,7 +19,7 @@
* @param setInfoForCard The set information for the card. * @param setInfoForCard The set information for the card.
*/ */
AllZonesCardAmountWidget::AllZonesCardAmountWidget(QWidget *parent, AllZonesCardAmountWidget::AllZonesCardAmountWidget(QWidget *parent,
TabGenericDeckEditor *deckEditor, AbstractTabDeckEditor *deckEditor,
DeckListModel *deckModel, DeckListModel *deckModel,
QTreeView *deckView, QTreeView *deckView,
QSlider *cardSizeSlider, QSlider *cardSizeSlider,

View file

@ -12,7 +12,7 @@ class AllZonesCardAmountWidget : public QWidget
Q_OBJECT Q_OBJECT
public: public:
explicit AllZonesCardAmountWidget(QWidget *parent, explicit AllZonesCardAmountWidget(QWidget *parent,
TabGenericDeckEditor *deckEditor, AbstractTabDeckEditor *deckEditor,
DeckListModel *deckModel, DeckListModel *deckModel,
QTreeView *deckView, QTreeView *deckView,
QSlider *cardSizeSlider, QSlider *cardSizeSlider,
@ -31,7 +31,7 @@ public slots:
private: private:
QVBoxLayout *layout; QVBoxLayout *layout;
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
DeckListModel *deckModel; DeckListModel *deckModel;
QTreeView *deckView; QTreeView *deckView;
QSlider *cardSizeSlider; QSlider *cardSizeSlider;

View file

@ -16,7 +16,7 @@
* @param zoneName The zone name (e.g., DECK_ZONE_MAIN or DECK_ZONE_SIDE). * @param zoneName The zone name (e.g., DECK_ZONE_MAIN or DECK_ZONE_SIDE).
*/ */
CardAmountWidget::CardAmountWidget(QWidget *parent, CardAmountWidget::CardAmountWidget(QWidget *parent,
TabGenericDeckEditor *deckEditor, AbstractTabDeckEditor *deckEditor,
DeckListModel *deckModel, DeckListModel *deckModel,
QTreeView *deckView, QTreeView *deckView,
QSlider *cardSizeSlider, QSlider *cardSizeSlider,

View file

@ -4,7 +4,7 @@
#include "../../../../deck/deck_list_model.h" #include "../../../../deck/deck_list_model.h"
#include "../../../../deck/deck_loader.h" #include "../../../../deck/deck_loader.h"
#include "../../../../game/cards/card_database.h" #include "../../../../game/cards/card_database.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include "../general/display/dynamic_font_size_push_button.h" #include "../general/display/dynamic_font_size_push_button.h"
#include <QHBoxLayout> #include <QHBoxLayout>
@ -18,7 +18,7 @@ class CardAmountWidget : public QWidget
Q_OBJECT Q_OBJECT
public: public:
explicit CardAmountWidget(QWidget *parent, explicit CardAmountWidget(QWidget *parent,
TabGenericDeckEditor *deckEditor, AbstractTabDeckEditor *deckEditor,
DeckListModel *deckModel, DeckListModel *deckModel,
QTreeView *deckView, QTreeView *deckView,
QSlider *cardSizeSlider, QSlider *cardSizeSlider,
@ -36,7 +36,7 @@ protected:
void showEvent(QShowEvent *event) override; void showEvent(QShowEvent *event) override;
private: private:
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
DeckListModel *deckModel; DeckListModel *deckModel;
QTreeView *deckView; QTreeView *deckView;
QSlider *cardSizeSlider; QSlider *cardSizeSlider;

View file

@ -21,7 +21,7 @@
* @param deckModel The DeckListModel instance that provides data for the deck's contents. * @param deckModel The DeckListModel instance that provides data for the deck's contents.
* @param deckView The QTreeView instance used to display the deck and its contents. * @param deckView The QTreeView instance used to display the deck and its contents.
*/ */
PrintingSelector::PrintingSelector(QWidget *parent, TabGenericDeckEditor *_deckEditor) PrintingSelector::PrintingSelector(QWidget *parent, AbstractTabDeckEditor *_deckEditor)
: QWidget(parent), deckEditor(_deckEditor), deckModel(deckEditor->deckDockWidget->deckModel), : QWidget(parent), deckEditor(_deckEditor), deckModel(deckEditor->deckDockWidget->deckModel),
deckView(deckEditor->deckDockWidget->deckView) deckView(deckEditor->deckDockWidget->deckView)
{ {

View file

@ -19,13 +19,13 @@ class PrintingSelectorCardSearchWidget;
class PrintingSelectorCardSelectionWidget; class PrintingSelectorCardSelectionWidget;
class PrintingSelectorCardSortingWidget; class PrintingSelectorCardSortingWidget;
class PrintingSelectorViewOptionsWidget; class PrintingSelectorViewOptionsWidget;
class TabGenericDeckEditor; class AbstractTabDeckEditor;
class PrintingSelector : public QWidget class PrintingSelector : public QWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
PrintingSelector(QWidget *parent, TabGenericDeckEditor *deckEditor); PrintingSelector(QWidget *parent, AbstractTabDeckEditor *deckEditor);
void setCard(const CardInfoPtr &newCard, const QString &_currentZone); void setCard(const CardInfoPtr &newCard, const QString &_currentZone);
void getAllSetsForCurrentCard(); void getAllSetsForCurrentCard();
@ -51,7 +51,7 @@ private:
FlowWidget *flowWidget; FlowWidget *flowWidget;
CardSizeWidget *cardSizeWidget; CardSizeWidget *cardSizeWidget;
PrintingSelectorCardSelectionWidget *cardSelectionBar; PrintingSelectorCardSelectionWidget *cardSelectionBar;
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
DeckListModel *deckModel; DeckListModel *deckModel;
QTreeView *deckView; QTreeView *deckView;
CardInfoPtr selectedCard; CardInfoPtr selectedCard;

View file

@ -28,7 +28,7 @@
* @param _currentZone The current zone in which the card is located. * @param _currentZone The current zone in which the card is located.
*/ */
PrintingSelectorCardDisplayWidget::PrintingSelectorCardDisplayWidget(QWidget *parent, PrintingSelectorCardDisplayWidget::PrintingSelectorCardDisplayWidget(QWidget *parent,
TabGenericDeckEditor *_deckEditor, AbstractTabDeckEditor *_deckEditor,
DeckListModel *_deckModel, DeckListModel *_deckModel,
QTreeView *_deckView, QTreeView *_deckView,
QSlider *_cardSizeSlider, QSlider *_cardSizeSlider,

View file

@ -3,7 +3,7 @@
#include "../../../../deck/deck_list_model.h" #include "../../../../deck/deck_list_model.h"
#include "../../../../game/cards/card_database.h" #include "../../../../game/cards/card_database.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include "printing_selector_card_overlay_widget.h" #include "printing_selector_card_overlay_widget.h"
#include "set_name_and_collectors_number_display_widget.h" #include "set_name_and_collectors_number_display_widget.h"
@ -16,7 +16,7 @@ class PrintingSelectorCardDisplayWidget : public QWidget
public: public:
PrintingSelectorCardDisplayWidget(QWidget *parent, PrintingSelectorCardDisplayWidget(QWidget *parent,
TabGenericDeckEditor *_deckEditor, AbstractTabDeckEditor *_deckEditor,
DeckListModel *_deckModel, DeckListModel *_deckModel,
QTreeView *_deckView, QTreeView *_deckView,
QSlider *_cardSizeSlider, QSlider *_cardSizeSlider,
@ -33,7 +33,7 @@ signals:
private: private:
QVBoxLayout *layout; QVBoxLayout *layout;
SetNameAndCollectorsNumberDisplayWidget *setNameAndCollectorsNumberDisplayWidget; SetNameAndCollectorsNumberDisplayWidget *setNameAndCollectorsNumberDisplayWidget;
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
DeckListModel *deckModel; DeckListModel *deckModel;
QTreeView *deckView; QTreeView *deckView;
QSlider *cardSizeSlider; QSlider *cardSizeSlider;

View file

@ -25,7 +25,7 @@
* @param _setInfoForCard The set-specific information for the card being displayed. * @param _setInfoForCard The set-specific information for the card being displayed.
*/ */
PrintingSelectorCardOverlayWidget::PrintingSelectorCardOverlayWidget(QWidget *parent, PrintingSelectorCardOverlayWidget::PrintingSelectorCardOverlayWidget(QWidget *parent,
TabGenericDeckEditor *_deckEditor, AbstractTabDeckEditor *_deckEditor,
DeckListModel *_deckModel, DeckListModel *_deckModel,
QTreeView *_deckView, QTreeView *_deckView,
QSlider *_cardSizeSlider, QSlider *_cardSizeSlider,

View file

@ -4,7 +4,7 @@
#include "../../../../client/ui/widgets/cards/card_info_picture_widget.h" #include "../../../../client/ui/widgets/cards/card_info_picture_widget.h"
#include "../../../../deck/deck_list_model.h" #include "../../../../deck/deck_list_model.h"
#include "../../../../game/cards/card_database.h" #include "../../../../game/cards/card_database.h"
#include "../../../tabs/tab_generic_deck_editor.h" #include "../../../tabs/abstract_tab_deck_editor.h"
#include "all_zones_card_amount_widget.h" #include "all_zones_card_amount_widget.h"
#include "card_amount_widget.h" #include "card_amount_widget.h"
#include "set_name_and_collectors_number_display_widget.h" #include "set_name_and_collectors_number_display_widget.h"
@ -15,7 +15,7 @@ class PrintingSelectorCardOverlayWidget : public QWidget
public: public:
explicit PrintingSelectorCardOverlayWidget(QWidget *parent, explicit PrintingSelectorCardOverlayWidget(QWidget *parent,
TabGenericDeckEditor *_deckEditor, AbstractTabDeckEditor *_deckEditor,
DeckListModel *_deckModel, DeckListModel *_deckModel,
QTreeView *_deckView, QTreeView *_deckView,
QSlider *_cardSizeSlider, QSlider *_cardSizeSlider,
@ -39,7 +39,7 @@ signals:
private: private:
CardInfoPictureWidget *cardInfoPicture; CardInfoPictureWidget *cardInfoPicture;
AllZonesCardAmountWidget *allZonesCardAmountWidget; AllZonesCardAmountWidget *allZonesCardAmountWidget;
TabGenericDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
DeckListModel *deckModel; DeckListModel *deckModel;
QTreeView *deckView; QTreeView *deckView;
QSlider *cardSizeSlider; QSlider *cardSizeSlider;

View file

@ -1,7 +1,7 @@
#include "deck_preview_tag_addition_widget.h" #include "deck_preview_tag_addition_widget.h"
#include "../../../../../settings/cache_settings.h" #include "../../../../../settings/cache_settings.h"
#include "../../../../tabs/tab_generic_deck_editor.h" #include "../../../../tabs/abstract_tab_deck_editor.h"
#include "deck_preview_tag_dialog.h" #include "deck_preview_tag_dialog.h"
#include <QFontMetrics> #include <QFontMetrics>