Cockatrice 2026-06-01-Development-3.1.0-beta.3
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
visual_deck_display_options_widget.h
Go to the documentation of this file.
1#ifndef COCKATRICE_VISUAL_DECK_DISPLAY_OPTIONS_WIDGET_H
2#define COCKATRICE_VISUAL_DECK_DISPLAY_OPTIONS_WIDGET_H
3
5
6#include <QComboBox>
7#include <QHBoxLayout>
8#include <QLabel>
9#include <QListWidget>
10#include <QPushButton>
11#include <QWidget>
12
27class VisualDeckDisplayOptionsWidget : public QWidget
28{
29 Q_OBJECT
30signals:
35 void displayTypeChanged(const DisplayType &displayType);
36
42
47 void sortCriteriaChanged(const QStringList &activeSortCriteria);
48
49public slots:
55 void retranslateUi();
56 void updateCompactMode(bool mode);
57 int expandedWidth() const;
58 int compactWidth() const;
59
60public:
65 explicit VisualDeckDisplayOptionsWidget(QWidget *parent);
66
71 {
72 return currentDisplayType;
73 }
74
78 QString getActiveGroupCriteria() const
79 {
81 }
82
86 QStringList getActiveSortCriteria() const
87 {
88 return activeSortCriteria;
89 }
90
91private slots:
98
104 void updateDisplayType();
105
106private:
108 QHBoxLayout *groupAndSortLayout;
109
112
115
118
120 QComboBox *groupByComboBox;
121
123 QString activeGroupCriteria = "maintype";
124
127
129 QLabel *sortByLabel;
130
132 QLabel *sortLabel;
133
135 QListWidget *sortByListWidget;
136
138 QStringList activeSortCriteria = {"name", "cmc", "colors", "maintype"};
139};
140
141#endif // COCKATRICE_VISUAL_DECK_DISPLAY_OPTIONS_WIDGET_H
Definition compact_push_button.h:7
Definition settings_button_widget.h:17
QHBoxLayout * groupAndSortLayout
Layout for grouping and sorting UI elements.
Definition visual_deck_display_options_widget.h:108
SettingsButtonWidget * sortCriteriaButton
Encapsulates the sort settings widgets (label + list).
Definition visual_deck_display_options_widget.h:126
CompactPushButton * displayTypeButton
Button used to toggle the display layout.
Definition visual_deck_display_options_widget.h:114
DisplayType currentDisplayType
Current deck display type.
Definition visual_deck_display_options_widget.h:111
void updateCompactMode(bool mode)
Definition visual_deck_display_options_widget.cpp:130
void retranslateUi()
Updates all UI text for retranslation/localization.
Definition visual_deck_display_options_widget.cpp:87
QString getActiveGroupCriteria() const
Gets the currently active group-by criterion.
Definition visual_deck_display_options_widget.h:78
QLabel * sortLabel
Descriptive label inside the sort criteria button.
Definition visual_deck_display_options_widget.h:132
QLabel * sortByLabel
Label for "Sort by".
Definition visual_deck_display_options_widget.h:129
void groupCriteriaChanged(const QString &activeGroupCriteria)
Emitted when a new grouping criterion is selected.
void displayTypeChanged(const DisplayType &displayType)
Emitted when the display type (flat or overlapping layout) changes.
QString activeGroupCriteria
Currently active group-by criterion.
Definition visual_deck_display_options_widget.h:123
QStringList getActiveSortCriteria() const
Gets the currently active ordered sort criteria.
Definition visual_deck_display_options_widget.h:86
int compactWidth() const
Definition visual_deck_display_options_widget.cpp:142
QComboBox * groupByComboBox
Combo box listing group-by criteria.
Definition visual_deck_display_options_widget.h:120
VisualDeckDisplayOptionsWidget(QWidget *parent)
Constructs a new VisualDeckDisplayOptionsWidget.
Definition visual_deck_display_options_widget.cpp:7
int expandedWidth() const
Definition visual_deck_display_options_widget.cpp:135
QListWidget * sortByListWidget
Draggable list of sort criteria.
Definition visual_deck_display_options_widget.h:135
DisplayType getDisplayType() const
Gets the current display type (Overlap or Flat).
Definition visual_deck_display_options_widget.h:70
void updateDisplayType()
Toggles the display layout between flat and overlapping modes.
Definition visual_deck_display_options_widget.cpp:111
QStringList activeSortCriteria
Ordered list of current sort criteria.
Definition visual_deck_display_options_widget.h:138
void sortCriteriaChanged(const QStringList &activeSortCriteria)
Emitted when the order of sort criteria changes.
void onSortCriteriaChange()
Slot triggered whenever the sort list is reordered.
Definition visual_deck_display_options_widget.cpp:100
QLabel * groupByLabel
Label for the group-by selector.
Definition visual_deck_display_options_widget.h:117
DisplayType
Definition visual_deck_editor_widget.h:31
@ Overlap
Definition visual_deck_editor_widget.h:33