Cockatrice 2026-09-01-Development-3.1.0-beta.10
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
palette_grid_widget.h
Go to the documentation of this file.
1#ifndef COCKATRICE_PALETTE_GRID_WIDGET_H
2#define COCKATRICE_PALETTE_GRID_WIDGET_H
3
4#include "../theme_config.h"
5#include "color_button.h"
6
7#include <QMap>
8#include <QPalette>
9#include <QVBoxLayout>
10#include <QWidget>
11
12class QLabel;
13class QScrollArea;
14// Scrollable grid of ColorButtons — one per (ColorGroup × ColorRole) cell.
15// Owns the load/read round-trip for PaletteConfig but has no file I/O itself.
16class PaletteGridWidget : public QWidget
17{
18 Q_OBJECT
19public:
20 explicit PaletteGridWidget(QWidget *parent = nullptr);
21
22 void loadPalette(const PaletteConfig &cfg);
24
25signals:
27
28private:
29 void buildGrid(QWidget *host);
30 void changeEvent(QEvent *e);
32
33 QMap<QPalette::ColorGroup, QMap<QPalette::ColorRole, ColorButton *>> colorButtons;
34 QScrollArea *scroll;
35 QWidget *gridHost;
36 QVBoxLayout *layout;
37 QVector<QLabel *> headerLabels;
38 QVector<QWidget *> rowShadeWidgets;
39};
40
41#endif // COCKATRICE_PALETTE_GRID_WIDGET_H
QWidget * gridHost
Definition palette_grid_widget.h:35
void buildGrid(QWidget *host)
Definition palette_grid_widget.cpp:64
void loadPalette(const PaletteConfig &cfg)
Definition palette_grid_widget.cpp:158
void refreshChromePalettes()
Definition palette_grid_widget.cpp:136
PaletteConfig currentPaletteConfig() const
Definition palette_grid_widget.cpp:171
QVector< QLabel * > headerLabels
Definition palette_grid_widget.h:37
QVector< QWidget * > rowShadeWidgets
Definition palette_grid_widget.h:38
void changeEvent(QEvent *e)
Definition palette_grid_widget.cpp:127
QMap< QPalette::ColorGroup, QMap< QPalette::ColorRole, ColorButton * > > colorButtons
Definition palette_grid_widget.h:33
QVBoxLayout * layout
Definition palette_grid_widget.h:36
QScrollArea * scroll
Definition palette_grid_widget.h:34
PaletteGridWidget(QWidget *parent=nullptr)
Definition palette_grid_widget.cpp:48
Definition theme_config.h:22