Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
game_view.h
Go to the documentation of this file.
1
6
7#ifndef GAMEVIEW_H
8#define GAMEVIEW_H
9
10#include "tally/tally.h"
11
12#include <QGraphicsView>
13#include <QList>
14#include <QPointF>
15#include <QRect>
16#include <QRectF>
17#include <QSize>
18#include <qtmetamacros.h>
19
20class GameScene;
21class QGridLayout;
22class QLabel;
23class QRubberBand;
24class QAction;
25class QWidget;
26
27class GameView : public QGraphicsView
28{
29 Q_OBJECT
30private:
32 QRubberBand *rubberBand;
36 QGridLayout *tallyLayout;
40
41 QSize rebuildTallyLabels(const QList<TallyRow> &entries);
42 void clearTallyLabels();
43
44protected:
45 void resizeEvent(QResizeEvent *event) override;
46private slots:
47 void startRubberBand(const QPointF &selectionOrigin);
48 void resizeRubberBand(const QPointF &cursorPoint, int selectedCount);
49 void stopRubberBand();
50 void refreshShortcuts();
51 void updateTotalSelectionCount(const QSize &viewSize = QSize());
52 void setFocusDisabled(bool disabled);
53public slots:
54 void updateSceneRect(const QRectF &rect);
55
56public:
57 explicit GameView(GameScene *scene, QWidget *parent = nullptr);
58};
59
60#endif
Manages the game board display including players, zones, cards, and animations.
Definition game_scene.h:60
void startRubberBand(const QPointF &selectionOrigin)
Definition game_view.cpp:121
QPointF selectionOrigin
Definition game_view.h:37
void updateTotalSelectionCount(const QSize &viewSize=QSize())
Definition game_view.cpp:261
void setFocusDisabled(bool disabled)
Definition game_view.cpp:323
QRect previousBandRect
Last rubber-band rect for targeted repaint.
Definition game_view.h:38
QWidget * tallyContainer
Definition game_view.h:35
QList< TallyRow > cachedTallyRows
Cached entries to avoid redundant rebuilds.
Definition game_view.h:39
QRubberBand * rubberBand
Definition game_view.h:32
void updateSceneRect(const QRectF &rect)
Definition game_view.cpp:116
GameView(GameScene *scene, QWidget *parent=nullptr)
Definition game_view.cpp:49
void refreshShortcuts()
Definition game_view.cpp:207
QLabel * dragCountLabel
Definition game_view.h:33
QAction * aCloseMostRecentZoneView
Definition game_view.h:31
QGridLayout * tallyLayout
Definition game_view.h:36
QSize rebuildTallyLabels(const QList< TallyRow > &entries)
Definition game_view.cpp:218
QLabel * totalCountLabel
Definition game_view.h:34
void resizeEvent(QResizeEvent *event) override
Definition game_view.cpp:105
void clearTallyLabels()
Definition game_view.cpp:213
void stopRubberBand()
Definition game_view.cpp:191
void resizeRubberBand(const QPointF &cursorPoint, int selectedCount)
Definition game_view.cpp:134
Definition remote_connection_controller.h:20