12#include "../game/abstract_game.h"
13#include "../game/log/message_log_widget.h"
14#include "../game/player/player.h"
15#include "../interface/widgets/menus/tearoff_menu.h"
16#include "../interface/widgets/replay/replay_manager.h"
20#include <QLoggingCategory>
23class ServerInfo_PlayerProperties;
158 void hideEvent(QHideEvent *event)
override;
169 QList<AbstractClient *> &_clients,
170 const Event_GameJoined &event,
171 const QMap<int, QString> &_roomGameTypes);
183 [[nodiscard]] QString
getTabText()
const override;
Definition abstract_card_item.h:22
Definition abstract_client.h:51
Definition abstract_game.h:21
Core in-memory container for card and set data.
Definition card_database.h:29
Definition card_item.h:29
Definition card_zone.h:26
Definition deck_view_container.h:49
Manages the game board display including players, zones, cards, and animations.
Definition game_scene.h:38
Definition game_view.h:16
Definition line_edit_completer.h:15
Definition replay_manager.h:20
TabGame(TabSupervisor *_tabSupervisor, QList< AbstractClient * > &_clients, const Event_GameJoined &event, const QMap< int, QString > &_roomGameTypes)
Definition tab_game.cpp:86
void actCompleterChanged()
Definition tab_game.cpp:621
AbstractGame * game
Definition tab_game.h:59
Player * addPlayer(Player *newPlayer)
Definition tab_game.cpp:646
QDockWidget * cardInfoDock
Definition tab_game.h:79
void createPlayAreaWidget(bool bReplay=false)
Definition tab_game.cpp:1199
QAction * aResetReplayLayout
Definition tab_game.h:84
void closeEvent(QCloseEvent *event) override
Definition tab_game.cpp:460
QDockWidget * playerListDock
Definition tab_game.h:79
QStringList gameTypes
Definition tab_game.h:62
void createDeckViewContainerWidget(bool bReplay=false)
Definition tab_game.cpp:1234
QAction * aReverseTurn
Definition tab_game.h:83
void startGame(bool resuming)
Definition tab_game.cpp:796
void actNextPhaseAction()
Definition tab_game.cpp:580
QAction * aRotateViewCW
Definition tab_game.h:84
void createViewMenuItems()
Definition tab_game.cpp:1036
QAction * aMessageLayoutDockVisible
Definition tab_game.h:85
QCompleter * completer
Definition tab_game.h:63
QAction * aLeaveGame
Definition tab_game.h:83
QLabel * timeElapsedLabel
Definition tab_game.h:69
QLabel * sayLabel
Definition tab_game.h:71
void addPlayerToAutoCompleteList(QString playerName)
Definition tab_game.cpp:543
void containerProcessingDone()
void actSay()
Definition tab_game.cpp:526
void newCardAdded(AbstractCardItem *card)
Definition tab_game.cpp:885
void actResetLayout()
Definition tab_game.cpp:1150
QAction * aGameInfo
Definition tab_game.h:83
bool leaveGame()
Definition tab_game.cpp:510
void notifyPlayerJoin(QString playerName)
Definition tab_game.cpp:627
QMenu * replayDockMenu
Definition tab_game.h:81
void removePlayerFromAutoCompleteList(QString playerName)
Definition tab_game.cpp:551
void adminLockChanged(bool lock)
Definition tab_game.cpp:471
void stopGame()
Definition tab_game.cpp:826
void connectToGameState()
Definition tab_game.cpp:134
GameScene * scene
Definition tab_game.h:74
QAction * aReplayDockFloating
Definition tab_game.h:86
TearOffMenu * phasesMenu
Definition tab_game.h:82
CardInfoFrameWidget * cardInfoFrameWidget
Definition tab_game.h:67
void refreshShortcuts()
Definition tab_game.cpp:373
void actGameInfo()
Definition tab_game.cpp:478
QStringList autocompleteUserList
Definition tab_game.h:64
void dockTopLevelChanged(bool topLevel)
Definition tab_game.cpp:1475
void actRotateViewCCW()
Definition tab_game.cpp:616
Player * setActivePlayer(int id)
Definition tab_game.cpp:853
void actPhaseAction()
Definition tab_game.cpp:565
void arrowDeletionRequested(int arrowId)
void createReplayMenuItems()
Definition tab_game.cpp:1011
void retranslateUi() override
Definition tab_game.cpp:272
void viewCardInfo(const CardRef &cardRef={}) const
Definition tab_game.cpp:1245
QAction * aPlayerListDockVisible
Definition tab_game.h:86
void setCardMenu(QMenu *menu)
Definition tab_game.cpp:927
void connectMessageLogToGameEventHandler()
Definition tab_game.cpp:169
void createZoneForPlayer(Player *newPlayer, int playerId)
Definition tab_game.cpp:775
QAction * aResetLayout
Definition tab_game.h:84
QMap< int, TabbedDeckViewContainer * > deckViewContainers
Definition tab_game.h:76
void notifyPlayerKicked()
Definition tab_game.cpp:636
void loadLayout()
Definition tab_game.cpp:1085
QAction * aNextPhaseAction
Definition tab_game.h:83
void dockFloatingTriggered()
Definition tab_game.cpp:1451
QAction * aReplayDockVisible
Definition tab_game.h:86
void updateTimeElapsedLabel(QString newTime)
Definition tab_game.cpp:466
void processLocalPlayerDeckSelect(Player *localPlayer, int playerId, ServerInfo_Player playerInfo)
Definition tab_game.cpp:742
QMenu * playerListDockMenu
Definition tab_game.h:81
void actRemoveLocalArrows()
Definition tab_game.cpp:596
void freeDocksSize()
Definition tab_game.cpp:1133
PhasesToolbar * phasesToolbar
Definition tab_game.h:73
void processRemotePlayerDeckSelect(QString deckList, int playerId, QString playerName)
Definition tab_game.cpp:720
void linkCardToChat(const QString &cardName)
Definition tab_game.cpp:234
void createCardInfoDock(bool bReplay=false)
Definition tab_game.cpp:1250
void phaseChanged(int phase)
bool eventFilter(QObject *o, QEvent *e) override
Definition tab_game.cpp:1402
void actConcede()
Definition tab_game.cpp:484
void processPlayerLeave(Player *leavingPlayer)
Definition tab_game.cpp:695
bool closeRequest() override
Definition tab_game.cpp:451
void loadDeckForLocalPlayer(Player *localPlayer, int playerId, ServerInfo_Player playerInfo)
Definition tab_game.cpp:748
QAction * aCardInfoDockVisible
Definition tab_game.h:85
QList< QAction * > phaseActions
Definition tab_game.h:88
void emitUserEvent()
Definition tab_game.cpp:249
QMenu * viewMenu
Definition tab_game.h:81
AbstractGame * getGame() const
Definition tab_game.h:185
void processLocalPlayerReady(int playerId, ServerInfo_Player playerInfo)
Definition tab_game.cpp:759
QString getTabText() const override
Definition tab_game.cpp:894
void removeSpectator(int spectatorId, ServerInfo_User spectator)
Definition tab_game.cpp:558
GameView * gameView
Definition tab_game.h:75
QAction * aNextPhase
Definition tab_game.h:83
QDockWidget * replayDock
Definition tab_game.h:79
QMenu * gameMenu
Definition tab_game.h:81
PlayerListWidget * playerListWidget
Definition tab_game.h:68
QAction * aCardInfoDockFloating
Definition tab_game.h:85
QAction * aNextTurn
Definition tab_game.h:83
const UserListProxy * userListProxy
Definition tab_game.h:60
void closeGame()
Definition tab_game.cpp:847
void connectToPlayerManager()
Definition tab_game.cpp:142
void addMentionTag(const QString &value)
Definition tab_game.cpp:228
QAction * aConcede
Definition tab_game.h:83
QAction * aMessageLayoutDockFloating
Definition tab_game.h:85
QMenu * cardInfoDockMenu
Definition tab_game.h:81
QAction * aRemoveLocalArrows
Definition tab_game.h:84
void openMessageDialog(const QString &userName, bool focus)
QMenu * messageLayoutDockMenu
Definition tab_game.h:81
void createPlayerListDock(bool bReplay=false)
Definition tab_game.cpp:1275
QWidget * gamePlayAreaWidget
Definition tab_game.h:78
void dockVisibleTriggered()
Definition tab_game.cpp:1423
QWidget * deckViewContainerWidget
Definition tab_game.h:78
void createMessageDock(bool bReplay=false)
Definition tab_game.cpp:1297
void updatePlayerListDockTitle()
Definition tab_game.cpp:262
void createReplayDock(GameReplay *replay)
Definition tab_game.cpp:1219
~TabGame() override
Definition tab_game.cpp:257
void setActivePhase(int phase)
Definition tab_game.cpp:880
QAction * aRotateViewCCW
Definition tab_game.h:84
QStackedWidget * mainWidget
Definition tab_game.h:65
ReplayManager * replayManager
Definition tab_game.h:61
QAction * aCardMenu
Definition tab_game.h:89
void gameClosing(TabGame *tab)
void connectPlayerListToGameEventHandler()
Definition tab_game.cpp:214
QAction * playersSeparator
Definition tab_game.h:80
QDockWidget * messageLayoutDock
Definition tab_game.h:79
void containerProcessingStarted(const GameEventContext &context)
void hideEvent(QHideEvent *event) override
Definition tab_game.cpp:1380
void actRotateViewCW()
Definition tab_game.cpp:611
MessageLogWidget * messageLog
Definition tab_game.h:70
QVBoxLayout * deckViewContainerLayout
Definition tab_game.h:77
QAction * aFocusChat
Definition tab_game.h:87
void openDeckEditor(const LoadedDeck &deck)
void chatMessageSent(QString chatMessage)
void processLocalPlayerReadyStateChanged(int playerId, bool ready)
Definition tab_game.cpp:770
void connectToGameEventHandler()
Definition tab_game.cpp:151
void createMenuItems()
Definition tab_game.cpp:940
LineEditCompleter * sayEdit
Definition tab_game.h:72
void actNextPhase()
Definition tab_game.cpp:571
void processLocalPlayerSideboardLocked(int playerId, bool sideboardLocked)
Definition tab_game.cpp:765
void addLocalPlayer(Player *newPlayer, int playerId)
Definition tab_game.cpp:674
void processMultipleRemotePlayerDeckSelect(QVector< QPair< int, QPair< QString, QString > > > playerIdDeckMap)
Definition tab_game.cpp:731
QAction * aPlayerListDockFloating
Definition tab_game.h:86
void resetChatAndPhase()
Definition tab_game.cpp:240
Definition tab_supervisor.h:83
Tab(TabSupervisor *_tabSupervisor)
Definition tab.cpp:11
Definition tabbed_deck_view_container.h:14
Definition user_list_proxy.h:19
Represents a deck that was loaded from somewhere. Contains the DeckList itself, as well as info about...
Definition loaded_deck.h:14
Q_LOGGING_CATEGORY(TabGameLog, "tab_game")