Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
tab_deck_storage_visual.h
Go to the documentation of this file.
1
6
7#ifndef TAB_DECK_STORAGE_VISUAL_H
8#define TAB_DECK_STORAGE_VISUAL_H
9
11#include "../tab.h"
12
13#include <QList>
14#include <QString>
15#include <QStringList>
17#include <qtmetamacros.h>
18
19struct LoadedDeck;
21class QTimer;
22class Response;
24class TabSupervisor;
25
26class TabDeckStorageVisual final : public Tab
27{
28 Q_OBJECT
29public:
30 explicit TabDeckStorageVisual(TabSupervisor *_tabSupervisor, AbstractClient *_client);
31 void retranslateUi() override;
32
33 [[nodiscard]] QString getTabText() const override
34 {
35 return tr("Visual Deck Storage");
36 }
37
41 void enterShareMode(const QStringList &preselectFiles = {});
42
46 void exitShareMode();
47
48 [[nodiscard]] bool isShareModeActive() const
49 {
50 return shareBar->isVisible();
51 }
52
53public slots:
54 void actOpenLocalDeck(const QString &filePath);
55 void actShareDeck(const QString &filePath);
56
57signals:
58 void openDeckEditor(const LoadedDeck &deck);
59
60private slots:
61 void actShareSelected();
62 void shareFinished(const Response &response, const CommandContainer &commandContainer);
63 void onShareTimeout();
66
67private:
68 void showShareNotice(const QString &message, bool warning = false);
69 void updateShareHint();
70
72
78 bool shareDeckAvailable = false;
79};
80
81#endif
ClientStatus
Definition abstract_client.h:58
Definition abstract_client.h:73
The activated toolbar used to create a temporary deck share.
Definition share_bar_widget.h:27
void handleConnectionChanged(ClientStatus status)
Definition tab_deck_storage_visual.cpp:212
bool isShareModeActive() const
Definition tab_deck_storage_visual.h:48
void updateShareHint()
Definition tab_deck_storage_visual.cpp:138
AbstractClient * client
Definition tab_deck_storage_visual.h:74
void showShareNotice(const QString &message, bool warning=false)
Definition tab_deck_storage_visual.cpp:221
TabDeckStorageVisual(TabSupervisor *_tabSupervisor, AbstractClient *_client)
Definition tab_deck_storage_visual.cpp:29
void onShareTimeout()
Definition tab_deck_storage_visual.cpp:228
void onShareSelectionChanged()
Definition tab_deck_storage_visual.cpp:131
int shareInFlightSeq
Definition tab_deck_storage_visual.h:77
void actShareDeck(const QString &filePath)
Definition tab_deck_storage_visual.cpp:122
VisualDeckStorageWidget * visualDeckStorageWidget
Definition tab_deck_storage_visual.h:71
void actOpenLocalDeck(const QString &filePath)
Definition tab_deck_storage_visual.cpp:85
int shareRequestSeq
Definition tab_deck_storage_visual.h:76
void enterShareMode(const QStringList &preselectFiles={})
Enters share-selection mode, optionally preselecting the given deck files.
Definition tab_deck_storage_visual.cpp:97
void exitShareMode()
Leaves share-selection mode and clears the selection.
Definition tab_deck_storage_visual.cpp:111
void retranslateUi() override
Definition tab_deck_storage_visual.cpp:76
bool shareDeckAvailable
Definition tab_deck_storage_visual.h:78
QString getTabText() const override
Definition tab_deck_storage_visual.h:33
QTimer * shareTimeoutTimer
Definition tab_deck_storage_visual.h:75
void actShareSelected()
Definition tab_deck_storage_visual.cpp:152
ShareBarWidget * shareBar
Definition tab_deck_storage_visual.h:73
void shareFinished(const Response &response, const CommandContainer &commandContainer)
Definition tab_deck_storage_visual.cpp:194
void openDeckEditor(const LoadedDeck &deck)
Definition tab_supervisor.h:92
Tab(TabSupervisor *_tabSupervisor)
Definition tab.cpp:16
Definition visual_deck_storage_widget.h:32
Definition commands.proto:8
Represents a deck that was loaded from somewhere. Contains the DeckList itself, as well as info about...
Definition loaded_deck.h:14
Definition response.proto:11