Cockatrice
2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Toggle main menu visibility
Loading...
Searching...
No Matches
utility_menu.h
Go to the documentation of this file.
1
6
7
#ifndef COCKATRICE_UTILITY_MENU_H
8
#define COCKATRICE_UTILITY_MENU_H
9
10
#include "
abstract_player_component.h
"
11
12
#include <QAction>
13
#include <QList>
14
#include <QMenu>
15
#include <QString>
16
#include <QStringList>
17
#include <
libcockatrice/card/card_info.h
>
18
#include <qtmetamacros.h>
19
20
class
PlayerGraphicsItem
;
21
22
class
UtilityMenu
:
public
QMenu,
public
AbstractPlayerComponent
23
{
24
Q_OBJECT
25
public
slots:
26
void
populatePredefinedTokensMenu
();
27
void
setLastToken
(
CardInfoPtr
lastToken);
28
void
retranslateUi
()
override
;
29
void
setShortcutsActive
()
override
;
30
void
setShortcutsInactive
()
override
;
31
32
public
:
33
explicit
UtilityMenu
(
PlayerGraphicsItem
*
player
, QMenu *playerMenu);
34
35
[[nodiscard]]
bool
createAnotherTokenActionExists
()
const
36
{
37
return
aCreateAnotherToken
!=
nullptr
;
38
}
39
40
void
setAndEnableCreateAnotherTokenAction
(QString text)
41
{
42
aCreateAnotherToken
->setText(tr(
"C&reate another %1 token"
).arg(text));
43
aCreateAnotherToken
->setEnabled(
true
);
44
}
45
46
QStringList
getPredefinedTokens
()
const
47
{
48
return
predefinedTokens
;
49
}
50
51
private
:
52
PlayerGraphicsItem
*
player
;
53
QStringList
predefinedTokens
;
54
55
QMenu *
createPredefinedTokenMenu
;
56
57
QAction *
aIncrementAllCardCounters
;
58
QAction *
aUntapAll
, *
aRollDie
, *
aFlipCoin
;
59
QAction *
aCreateToken
, *
aCreateAnotherToken
;
60
};
61
62
#endif
// COCKATRICE_UTILITY_MENU_H
abstract_player_component.h
Polymorphic interface for player-bound UI components managed by PlayerMenu.
CardInfoPtr
QSharedPointer< CardInfo > CardInfoPtr
Definition
card_info.cpp:15
card_info.h
AbstractPlayerComponent
Interface for player-bound UI components that need shortcut and translation lifecycle management.
Definition
abstract_player_component.h:18
PlayerGraphicsItem
Definition
player_graphics_item.h:39
UtilityMenu::predefinedTokens
QStringList predefinedTokens
Definition
utility_menu.h:53
UtilityMenu::setShortcutsActive
void setShortcutsActive() override
Definition
utility_menu.cpp:129
UtilityMenu::player
PlayerGraphicsItem * player
Definition
utility_menu.h:52
UtilityMenu::setAndEnableCreateAnotherTokenAction
void setAndEnableCreateAnotherTokenAction(QString text)
Definition
utility_menu.h:40
UtilityMenu::createPredefinedTokenMenu
QMenu * createPredefinedTokenMenu
Definition
utility_menu.h:55
UtilityMenu::createAnotherTokenActionExists
bool createAnotherTokenActionExists() const
Definition
utility_menu.h:35
UtilityMenu::UtilityMenu
UtilityMenu(PlayerGraphicsItem *player, QMenu *playerMenu)
Definition
utility_menu.cpp:18
UtilityMenu::populatePredefinedTokensMenu
void populatePredefinedTokensMenu()
Definition
utility_menu.cpp:78
UtilityMenu::aCreateToken
QAction * aCreateToken
Definition
utility_menu.h:59
UtilityMenu::aRollDie
QAction * aRollDie
Definition
utility_menu.h:58
UtilityMenu::aCreateAnotherToken
QAction * aCreateAnotherToken
Definition
utility_menu.h:59
UtilityMenu::aIncrementAllCardCounters
QAction * aIncrementAllCardCounters
Definition
utility_menu.h:57
UtilityMenu::aFlipCoin
QAction * aFlipCoin
Definition
utility_menu.h:58
UtilityMenu::getPredefinedTokens
QStringList getPredefinedTokens() const
Definition
utility_menu.h:46
UtilityMenu::setShortcutsInactive
void setShortcutsInactive() override
Definition
utility_menu.cpp:143
UtilityMenu::retranslateUi
void retranslateUi() override
Definition
utility_menu.cpp:116
UtilityMenu::setLastToken
void setLastToken(CardInfoPtr lastToken)
Definition
utility_menu.cpp:107
UtilityMenu::aUntapAll
QAction * aUntapAll
Definition
utility_menu.h:58
cockatrice
src
game_graphics
player
menu
utility_menu.h
Generated by
1.18.0