Cockatrice 2025-11-30-Development-2.11.0-beta.38
A cross-platform virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
deck_card_zone_display_widget.h
Go to the documentation of this file.
1
6
7#ifndef DECK_CARD_ZONE_DISPLAY_WIDGET_H
8#define DECK_CARD_ZONE_DISPLAY_WIDGET_H
9
15#include "card_size_widget.h"
16
17#include <QVBoxLayout>
18#include <QWidget>
20
21class DeckCardZoneDisplayWidget : public QWidget
22{
23 Q_OBJECT
24
25public:
26 DeckCardZoneDisplayWidget(QWidget *parent,
28 QItemSelectionModel *selectionModel,
29 QPersistentModelIndex trackedIndex,
30 QString zoneName,
31 QString activeGroupCriteria,
32 QStringList activeSortCriteria,
34 int bannerOpacity,
36 CardSizeWidget *_cardSizeWidget);
37 void onSelectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
39 QItemSelectionModel *selectionModel;
40 QPersistentModelIndex trackedIndex;
41 QString zoneName;
43 void resizeEvent(QResizeEvent *event) override;
44
45public slots:
46 void onClick(QMouseEvent *event, CardInfoPictureWithTextOverlayWidget *card);
47 void onHover(const ExactCard &card);
49 void constructAppropriateWidget(QPersistentModelIndex index);
50 void displayCards();
54 QList<QString> getGroupCriteriaValueList();
55 void onCategoryAddition(const QModelIndex &parent, int first, int last);
56 void onCategoryRemoval(const QModelIndex &parent, int first, int last);
57
58signals:
59 void cardClicked(QMouseEvent *event, CardInfoPictureWithTextOverlayWidget *card, QString zoneName);
60 void cardHovered(const ExactCard &card);
63
64private:
66 QStringList activeSortCriteria;
68 int bannerOpacity = 20;
71 QVBoxLayout *layout;
74 QVBoxLayout *cardGroupLayout;
76 QHash<QPersistentModelIndex, QWidget *> indexToWidgetMap;
77};
78
79#endif // DECK_CARD_ZONE_DISPLAY_WIDGET_H
TODO: Document this.
TODO: Document this.
TODO: Document this.
Definition banner_widget.h:17
Definition card_group_display_widget.h:21
Definition card_info_picture_with_text_overlay_widget.h:18
A widget for adjusting card sizes using a slider.
Definition card_size_widget.h:21
int subBannerOpacity
Definition deck_card_zone_display_widget.h:69
void cardHovered(const ExactCard &card)
void onCategoryRemoval(const QModelIndex &parent, int first, int last)
Definition deck_card_zone_display_widget.cpp:157
void resizeEvent(QResizeEvent *event) override
Definition deck_card_zone_display_widget.cpp:174
void onHover(const ExactCard &card)
Definition deck_card_zone_display_widget.cpp:188
QVBoxLayout * layout
Definition deck_card_zone_display_widget.h:71
CardSizeWidget * cardSizeWidget
Definition deck_card_zone_display_widget.h:70
QVBoxLayout * cardGroupLayout
Definition deck_card_zone_display_widget.h:74
QHash< QPersistentModelIndex, QWidget * > indexToWidgetMap
Definition deck_card_zone_display_widget.h:76
void cleanupInvalidCardGroup(CardGroupDisplayWidget *displayWidget)
Definition deck_card_zone_display_widget.cpp:71
void constructAppropriateWidget(QPersistentModelIndex index)
Definition deck_card_zone_display_widget.cpp:83
QStringList activeSortCriteria
Definition deck_card_zone_display_widget.h:66
QList< QString > getGroupCriteriaValueList()
Definition deck_card_zone_display_widget.cpp:228
void displayCards()
Definition deck_card_zone_display_widget.cpp:118
QString activeGroupCriteria
Definition deck_card_zone_display_widget.h:65
void requestCleanup(DeckCardZoneDisplayWidget *displayWidget)
QWidget * cardGroupContainer
Definition deck_card_zone_display_widget.h:73
void onClick(QMouseEvent *event, CardInfoPictureWithTextOverlayWidget *card)
Definition deck_card_zone_display_widget.cpp:184
void onCategoryAddition(const QModelIndex &parent, int first, int last)
Definition deck_card_zone_display_widget.cpp:142
void onActiveGroupCriteriaChanged(QString activeGroupCriteria)
Definition deck_card_zone_display_widget.cpp:216
void onSelectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
Definition deck_card_zone_display_widget.cpp:48
QPersistentModelIndex trackedIndex
Definition deck_card_zone_display_widget.h:40
QString zoneName
Definition deck_card_zone_display_widget.h:41
DisplayType displayType
Definition deck_card_zone_display_widget.h:67
void refreshDisplayType(const DisplayType &displayType)
Definition deck_card_zone_display_widget.cpp:193
QItemSelectionModel * selectionModel
Definition deck_card_zone_display_widget.h:39
void cardClicked(QMouseEvent *event, CardInfoPictureWithTextOverlayWidget *card, QString zoneName)
OverlapWidget * overlapWidget
Definition deck_card_zone_display_widget.h:75
void activeSortCriteriaChanged(QStringList activeSortCriteria)
void onActiveSortCriteriaChanged(QStringList activeSortCriteria)
Definition deck_card_zone_display_widget.cpp:222
BannerWidget * banner
Definition deck_card_zone_display_widget.h:72
DeckListModel * deckListModel
Definition deck_card_zone_display_widget.h:38
int bannerOpacity
Definition deck_card_zone_display_widget.h:68
DeckCardZoneDisplayWidget(QWidget *parent, DeckListModel *deckListModel, QItemSelectionModel *selectionModel, QPersistentModelIndex trackedIndex, QString zoneName, QString activeGroupCriteria, QStringList activeSortCriteria, DisplayType displayType, int bannerOpacity, int subBannerOpacity, CardSizeWidget *_cardSizeWidget)
Definition deck_card_zone_display_widget.cpp:9
Qt model representing a decklist for use in views (tree/table).
Definition deck_list_model.h:200
Represents a specific card instance, defined by its CardInfo and a particular printing.
Definition exact_card.h:19
A widget for managing overlapping child widgets.
Definition overlap_widget.h:15
TODO: Document this.
TODO: Document this.
DisplayType
Definition visual_deck_editor_widget.h:29
@ Overlap
Definition visual_deck_editor_widget.h:31