Cockatrice 2026-06-01-Development-3.1.0-beta.3
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
25private:
26 void buildGrid(QWidget *host);
27 void changeEvent(QEvent *e);
29
30 QMap<QPalette::ColorGroup, QMap<QPalette::ColorRole, ColorButton *>> colorButtons;
31 QScrollArea *scroll;
32 QWidget *gridHost;
33 QVBoxLayout *layout;
34 QVector<QLabel *> headerLabels;
35 QVector<QWidget *> rowShadeWidgets;
36};
37
38#endif // COCKATRICE_PALETTE_GRID_WIDGET_H
QWidget * gridHost
Definition palette_grid_widget.h:32
void buildGrid(QWidget *host)
Definition palette_grid_widget.cpp:64
void loadPalette(const PaletteConfig &cfg)
Definition palette_grid_widget.cpp:157
void refreshChromePalettes()
Definition palette_grid_widget.cpp:135
PaletteConfig currentPaletteConfig() const
Definition palette_grid_widget.cpp:170
QVector< QLabel * > headerLabels
Definition palette_grid_widget.h:34
QVector< QWidget * > rowShadeWidgets
Definition palette_grid_widget.h:35
void changeEvent(QEvent *e)
Definition palette_grid_widget.cpp:126
QMap< QPalette::ColorGroup, QMap< QPalette::ColorRole, ColorButton * > > colorButtons
Definition palette_grid_widget.h:30
QVBoxLayout * layout
Definition palette_grid_widget.h:33
QScrollArea * scroll
Definition palette_grid_widget.h:31
PaletteGridWidget(QWidget *parent=nullptr)
Definition palette_grid_widget.cpp:48
Definition theme_config.h:22