Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
card_menu.h
Go to the documentation of this file.
1
6
7#ifndef COCKATRICE_CARD_MENU_H
8#define COCKATRICE_CARD_MENU_H
9
10#include <QList>
11#include <QMenu>
12#include <QPair>
13#include <QString>
14#include <qtmetamacros.h>
15
16class CardItem;
18class PlayerLogic;
19class QAction;
20struct CardRef;
21
22class CardMenu : public QMenu
23{
24 Q_OBJECT
25
26signals:
27 void cardInfoRequested(const CardRef &cardRef);
28
29public:
31 void removePlayer(PlayerLogic *playerToRemove);
32 void createTableMenu(bool canModifyCard);
33 void createStackMenu(bool canModifyCard);
34 void createGraveyardOrExileMenu(bool canModifyCard);
35 void createHandOrCustomZoneMenu(bool canModifyCard);
36 void createZonelessMenu(bool canModifyCard);
37
39
40 QAction *aPlay, *aPlayFacedown;
41 QAction *aRevealToAll;
42 QAction *aHide;
43 QAction *aClone;
45 QAction *aDrawArrow;
46 QAction *aTap, *aDoesntUntap;
47 QAction *aFlip, *aPeek;
48 QAction *aAttach, *aUnattach;
51
53
54private:
56 const CardItem *card;
59
61 void retranslateUi();
62 void initContextualPlayersMenu(QMenu *menu, QAction *allPlayersAction);
63 void setShortcutsActive();
64 void addRelatedCardView();
65};
66
67#endif // COCKATRICE_CARD_MENU_H
Definition card_item.h:33
QAction * aPlayFacedown
Definition card_menu.h:40
CardMenu(PlayerGraphicsItem *player, const CardItem *card, bool shortcutsActive)
Definition card_menu.cpp:70
void createGraveyardOrExileMenu(bool canModifyCard)
Definition card_menu.cpp:288
QAction * aSelectRow
Definition card_menu.h:44
QAction * aSelectAll
Definition card_menu.h:44
QAction * aClone
Definition card_menu.h:43
QAction * aPeek
Definition card_menu.h:47
QAction * aSetAnnotation
Definition card_menu.h:49
QList< QAction * > aRemoveCounter
Definition card_menu.h:52
void cardInfoRequested(const CardRef &cardRef)
QAction * aDrawArrow
Definition card_menu.h:45
QAction * aUnattach
Definition card_menu.h:48
void addRelatedCardView()
Definition card_menu.cpp:393
void createTableMenu(bool canModifyCard)
Definition card_menu.cpp:203
QAction * aFlip
Definition card_menu.h:47
QAction * aAttach
Definition card_menu.h:48
void createHandOrCustomZoneMenu(bool canModifyCard)
Definition card_menu.cpp:318
void retranslateUi()
Definition card_menu.cpp:504
PlayerGraphicsItem * player
Definition card_menu.h:55
bool shortcutsActive
Definition card_menu.h:58
void removePlayer(PlayerLogic *playerToRemove)
Definition card_menu.cpp:192
QAction * aDoesntUntap
Definition card_menu.h:46
QList< QAction * > aSetCounter
Definition card_menu.h:52
QAction * aTap
Definition card_menu.h:46
QAction * aPlay
Definition card_menu.h:40
QAction * aRevealToAll
Definition card_menu.h:41
void createStackMenu(bool canModifyCard)
Definition card_menu.cpp:260
QAction * aReduceLifeByPower
Definition card_menu.h:50
void setShortcutsActive()
Definition card_menu.cpp:544
QAction * aSelectColumn
Definition card_menu.h:44
QList< QAction * > aAddCounter
Definition card_menu.h:52
const CardItem * card
Definition card_menu.h:56
QList< QPair< QString, int > > playersInfo
Definition card_menu.h:57
void addRelatedCardActions()
Definition card_menu.cpp:430
void createZonelessMenu(bool canModifyCard)
Definition card_menu.cpp:366
void initContextualPlayersMenu(QMenu *menu, QAction *allPlayersAction)
Populates the menu with an action for each active player.
Definition card_menu.cpp:382
QAction * aHide
Definition card_menu.h:42
QMenu * mCardCounters
Definition card_menu.h:38
Definition player_graphics_item.h:39
Definition player_logic.h:56
Definition remote_connection_controller.h:20
Definition card_ref.h:14