Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
card_amount_widget.h
Go to the documentation of this file.
1
7
8#ifndef CARD_AMOUNT_WIDGET_H
9#define CARD_AMOUNT_WIDGET_H
10
12
13#include <QString>
14#include <QWidget>
15#include <qtmetamacros.h>
16
19class QHBoxLayout;
20class QLabel;
21class QSlider;
22
23class CardAmountWidget : public QWidget
24{
25 Q_OBJECT
26
27signals:
28 void deckModified(const QString &modificationReason);
29
30public:
31 explicit CardAmountWidget(QWidget *parent,
33 QSlider *cardSizeSlider,
34 const ExactCard &rootCard,
35 const QString &zoneName);
36 int getAmount();
37
38public slots:
39 void setAmount(int _amount);
40 void updateCardCount();
41 void addPrinting(const QString &zone);
42
43protected:
44 void paintEvent(QPaintEvent *event) override;
45 void showEvent(QShowEvent *event) override;
46
47private:
51 QString zoneName;
52 QHBoxLayout *layout;
56
57 bool hovered;
58 int amount = 0;
59
60 void decrementCardHelper(const QString &zoneName);
61
62private slots:
69 void adjustFontSize(int scalePercentage);
70};
71
72#endif // CARD_AMOUNT_WIDGET_H
DeckStateManager * deckStateManager
Definition card_amount_widget.h:48
DynamicFontSizePushButton * decrementButton
Definition card_amount_widget.h:54
int amount
Definition card_amount_widget.h:58
void adjustFontSize(int scalePercentage)
Adjusts the font size of the card count label based on the slider value.
Definition card_amount_widget.cpp:133
void showEvent(QShowEvent *event) override
Definition card_amount_widget.cpp:112
bool hovered
Definition card_amount_widget.h:57
void updateCardCount()
Updates the card count display in the widget.
Definition card_amount_widget.cpp:157
void paintEvent(QPaintEvent *event) override
Handles the painting of the widget, drawing a semi-transparent background.
Definition card_amount_widget.cpp:99
QHBoxLayout * layout
Definition card_amount_widget.h:52
void removePrintingSideboard()
Removes a printing from the sideboard zone.
Definition card_amount_widget.cpp:278
void removePrintingTokensboard()
Removes a printing from the tokens zone.
Definition card_amount_widget.cpp:286
DynamicFontSizePushButton * incrementButton
Definition card_amount_widget.h:53
void addPrintingTokensboard()
Adds a printing to the tokens zone.
Definition card_amount_widget.cpp:262
void removePrintingMainboard()
Removes a printing from the mainboard zone.
Definition card_amount_widget.cpp:270
QSlider * cardSizeSlider
Definition card_amount_widget.h:49
void deckModified(const QString &modificationReason)
QString zoneName
Definition card_amount_widget.h:51
int getAmount()
Definition card_amount_widget.cpp:83
CardAmountWidget(QWidget *parent, DeckStateManager *deckStateManager, QSlider *cardSizeSlider, const ExactCard &rootCard, const QString &zoneName)
Constructs a widget for displaying and controlling the card count in a specific zone.
Definition card_amount_widget.cpp:37
void addPrinting(const QString &zone)
Adds a printing of the card to the specified zone (Mainboard, Sideboard, or Tokensboard).
Definition card_amount_widget.cpp:205
ExactCard rootCard
Definition card_amount_widget.h:50
void setAmount(int _amount)
Definition card_amount_widget.cpp:88
void addPrintingMainboard()
Adds a printing to the mainboard zone.
Definition card_amount_widget.cpp:246
void addPrintingSideboard()
Adds a printing to the sideboard zone.
Definition card_amount_widget.cpp:254
void decrementCardHelper(const QString &zoneName)
Helper function to decrement the card count for a given zone.
Definition card_amount_widget.cpp:296
QLabel * cardCountInZone
Definition card_amount_widget.h:55
This class centralizes the management of the state of the deck in the deck editor tab....
Definition deck_state_manager.h:32
Definition dynamic_font_size_push_button.h:18
Represents a specific card instance, defined by its CardInfo and a particular printing.
Definition exact_card.h:24