[Move refactor] Move tabs to interface/widgets (#6235)

* Move tabs to interface/widgets.

---------

Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
This commit is contained in:
BruebachL 2025-10-09 14:51:47 +02:00 committed by GitHub
parent d9c65d4ae0
commit b8983f27ab
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
134 changed files with 111 additions and 112 deletions

View file

@ -0,0 +1,37 @@
#include "tab_deck_storage_visual.h"
#include "../../interface/widgets/cards/deck_preview_card_picture_widget.h"
#include "../../interface/widgets/visual_deck_storage/visual_deck_storage_widget.h"
#include "../tab_supervisor.h"
#include <QMessageBox>
#include <QMouseEvent>
#include <libcockatrice/card/card_database/model/card_database_model.h>
#include <libcockatrice/protocol/pb/command_deck_del.pb.h>
TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor)
: Tab(_tabSupervisor), visualDeckStorageWidget(new VisualDeckStorageWidget(this))
{
connect(this, &TabDeckStorageVisual::openDeckEditor, tabSupervisor, &TabSupervisor::openDeckInNewTab);
connect(visualDeckStorageWidget, &VisualDeckStorageWidget::deckLoadRequested, this,
&TabDeckStorageVisual::actOpenLocalDeck);
connect(visualDeckStorageWidget, &VisualDeckStorageWidget::openDeckEditor, this,
&TabDeckStorageVisual::openDeckEditor);
auto *widget = new QWidget(this);
auto *layout = new QVBoxLayout(widget);
widget->setLayout(layout);
this->setCentralWidget(widget);
layout->addWidget(visualDeckStorageWidget);
}
void TabDeckStorageVisual::actOpenLocalDeck(const QString &filePath)
{
DeckLoader deckLoader;
if (!deckLoader.loadFromFile(filePath, DeckLoader::getFormatFromName(filePath), true)) {
QMessageBox::critical(this, tr("Error"), tr("Could not open deck at %1").arg(filePath));
return;
}
emit openDeckEditor(&deckLoader);
}

View file

@ -0,0 +1,46 @@
/**
* @file tab_deck_storage_visual.h
* @ingroup Tabs
* @brief TODO: Document this.
*/
#ifndef TAB_DECK_STORAGE_VISUAL_H
#define TAB_DECK_STORAGE_VISUAL_H
#include "../tab.h"
class AbstractClient;
class CommandContainer;
class DeckLoader;
class DeckPreviewWidget;
class QFileSystemModel;
class QGroupBox;
class QToolBar;
class QTreeView;
class QTreeWidget;
class QTreeWidgetItem;
class Response;
class VisualDeckStorageWidget;
class TabDeckStorageVisual final : public Tab
{
Q_OBJECT
public:
explicit TabDeckStorageVisual(TabSupervisor *_tabSupervisor);
void retranslateUi() override{};
[[nodiscard]] QString getTabText() const override
{
return tr("Visual Deck Storage");
}
public slots:
void actOpenLocalDeck(const QString &filePath);
signals:
void openDeckEditor(const DeckLoader *deckLoader);
private:
VisualDeckStorageWidget *visualDeckStorageWidget;
};
#endif