Cockatrice 2026-09-01-Development-3.1.0-beta.10
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
deck_view_container.h
Go to the documentation of this file.
1
6
7#ifndef DECK_VIEW_CONTAINER_H
8#define DECK_VIEW_CONTAINER_H
9
11
12#include <QPushButton>
13
14class QVBoxLayout;
18class Response;
19class TabGame;
20class DeckView;
21
25class ToggleButton : public QPushButton
26{
27 Q_OBJECT
28private:
29 bool state;
30signals:
32
33public:
34 explicit ToggleButton(QWidget *parent = nullptr);
35 [[nodiscard]] bool getState() const
36 {
37 return state;
38 }
39 void setState(bool _state);
40
41protected:
42 void paintEvent(QPaintEvent *event) override;
43};
44
48class DeckViewContainer : public QWidget
49{
50 Q_OBJECT
51private:
52 QVBoxLayout *deckViewLayout;
63
65 void sendReadyStartCommand(bool ready);
66private slots:
69 void loadLocalDeck();
70 void loadRemoteDeck();
71 void loadFromClipboard();
72 void loadFromWebsite();
73 void unloadDeck();
74 void readyStart();
75 void forceStart();
76 void deckSelectFinished(const Response &r);
80 void refreshShortcuts();
82signals:
84 void notIdle();
85
86public:
87 DeckViewContainer(int _playerId, TabGame *parent);
88 void retranslateUi();
89 void setReadyStart(bool ready);
90 void readyAndUpdate();
91 void setSideboardLocked(bool locked);
92 void setDeck(const DeckList &deck);
93 void setVisualDeckStorageExists(bool exists);
96
97public slots:
98 void loadDeckFromFile(const QString &filePath);
99 void loadDeckFromDeckList(const DeckList &deck);
100};
101
102#endif // DECK_VIEW_CONTAINER_H
Definition abstract_card_item.h:21
Represents a complete deck, including metadata, zones, cards, and sideboard plans.
Definition deck_list.h:63
Definition deck_preview_widget.h:30
int playmatRotationIndex
Per-match cursor for round-robin playmat mode.
Definition deck_view_container.h:60
void loadRemoteDeck()
Definition deck_view_container.cpp:349
void loadFromClipboard()
Definition deck_view_container.cpp:361
void sendReadyStartCommand(bool ready)
Definition deck_view_container.cpp:435
QPushButton * loadFromWebsiteButton
Definition deck_view_container.h:53
void deckSelectFinished(const Response &r)
Definition deck_view_container.cpp:385
void unloadDeck()
Definition deck_view_container.cpp:255
void newCardAdded(AbstractCardItem *card)
void readyAndUpdate()
Definition deck_view_container.cpp:462
void loadFromWebsite()
Definition deck_view_container.cpp:373
void setSideboardLocked(bool locked)
Definition deck_view_container.cpp:467
int playerId
Definition deck_view_container.h:59
VisualDeckStorageWidget * visualDeckStorageWidget
Definition deck_view_container.h:57
void loadLocalDeck()
Definition deck_view_container.cpp:261
void setVisualDeckStorageExists(bool exists)
Definition deck_view_container.cpp:233
DeckViewContainer(int _playerId, TabGame *parent)
Definition deck_view_container.cpp:54
void readyStart()
Definition deck_view_container.cpp:394
QPushButton * loadFromClipboardButton
Definition deck_view_container.h:53
void setReadyStart(bool ready)
Definition deck_view_container.cpp:452
void updateSideboardLockButtonText()
Definition deck_view_container.cpp:203
void retranslateUi()
Definition deck_view_container.cpp:130
ToggleButton * readyStartButton
Definition deck_view_container.h:55
void sideboardPlanChanged()
Definition deck_view_container.cpp:422
QPushButton * loadRemoteButton
Definition deck_view_container.h:53
TabGame * parentGame
Definition deck_view_container.h:58
void tryCreateVisualDeckStorageWidget()
Definition deck_view_container.cpp:116
void switchToDeckLoadedView()
Definition deck_view_container.cpp:181
DeckView * deckView
Definition deck_view_container.h:56
QVBoxLayout * deckViewLayout
Definition deck_view_container.h:52
void resolveAndSendPlaymat()
Definition deck_view_container.cpp:305
void refreshShortcuts()
Definition deck_view_container.cpp:215
void forceStart()
Definition deck_view_container.cpp:399
QPushButton * unloadDeckButton
Definition deck_view_container.h:54
void loadDeckFromDeckList(const DeckList &deck)
Definition deck_view_container.cpp:285
void loadDeckFromFile(const QString &filePath)
Definition deck_view_container.cpp:271
ToggleButton * sideboardLockButton
Definition deck_view_container.h:55
void onPlaymatSettingsChanged()
Definition deck_view_container.cpp:339
DeckList currentDeck
Cached deck for live settings re-resolution.
Definition deck_view_container.h:61
PlaymatInfo lastResolvedPlaymat
Tracks last sent playmat to avoid repeats in random mode.
Definition deck_view_container.h:62
QPushButton * loadLocalButton
Definition deck_view_container.h:53
void advancePlaymatRotation()
Definition deck_view_container.cpp:344
QPushButton * forceStartGameButton
Definition deck_view_container.h:54
void switchToDeckSelectView()
Definition deck_view_container.cpp:148
void setDeck(const DeckList &deck)
Definition deck_view_container.cpp:476
void sideboardLockButtonClicked()
Definition deck_view_container.cpp:414
Definition deck_view.h:141
Definition tab_game.h:59
Definition deck_view_container.h:26
bool getState() const
Definition deck_view_container.h:35
bool state
Definition deck_view_container.h:29
void stateChanged()
void setState(bool _state)
Definition deck_view_container.cpp:47
void paintEvent(QPaintEvent *event) override
Definition deck_view_container.cpp:34
ToggleButton(QWidget *parent=nullptr)
Definition deck_view_container.cpp:30
Definition visual_deck_storage_widget.h:30
A resolved playmat (card + positioning parameters).
Definition playmat_params.h:42
Definition response.proto:11