Cockatrice
2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Toggle main menu visibility
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
6
#include <QList>
7
#include <QMap>
8
#include <QPalette>
9
#include <QVector>
10
#include <QWidget>
11
#include <qtmetamacros.h>
12
13
class
QLabel;
14
class
QScrollArea;
15
class
ColorButton
;
16
class
QVBoxLayout;
17
18
// Scrollable grid of ColorButtons — one per (ColorGroup × ColorRole) cell.
19
// Owns the load/read round-trip for PaletteConfig but has no file I/O itself.
20
class
PaletteGridWidget
:
public
QWidget
21
{
22
Q_OBJECT
23
public
:
24
explicit
PaletteGridWidget
(QWidget *parent =
nullptr
);
25
26
void
loadPalette
(
const
PaletteConfig
&cfg);
27
PaletteConfig
currentPaletteConfig
()
const
;
28
29
signals:
30
void
paletteChanged
();
31
32
private
:
33
void
buildGrid
(QWidget *host);
34
void
changeEvent
(QEvent *e);
35
void
refreshChromePalettes
();
36
37
QMap<QPalette::ColorGroup, QMap<QPalette::ColorRole, ColorButton *>
>
colorButtons
;
38
QMap<AppColor::Role, ColorButton *>
appColorButtons
;
39
QScrollArea *
scroll
;
40
QWidget *
gridHost
;
41
QVBoxLayout *
layout
;
42
QVector<QLabel *>
headerLabels
;
43
QVector<QWidget *>
rowShadeWidgets
;
44
};
45
46
#endif
// COCKATRICE_PALETTE_GRID_WIDGET_H
ColorButton
Definition
color_button.h:11
PaletteGridWidget::gridHost
QWidget * gridHost
Definition
palette_grid_widget.h:40
PaletteGridWidget::buildGrid
void buildGrid(QWidget *host)
Definition
palette_grid_widget.cpp:82
PaletteGridWidget::loadPalette
void loadPalette(const PaletteConfig &cfg)
Definition
palette_grid_widget.cpp:216
PaletteGridWidget::refreshChromePalettes
void refreshChromePalettes()
Definition
palette_grid_widget.cpp:194
PaletteGridWidget::currentPaletteConfig
PaletteConfig currentPaletteConfig() const
Definition
palette_grid_widget.cpp:239
PaletteGridWidget::headerLabels
QVector< QLabel * > headerLabels
Definition
palette_grid_widget.h:42
PaletteGridWidget::rowShadeWidgets
QVector< QWidget * > rowShadeWidgets
Definition
palette_grid_widget.h:43
PaletteGridWidget::changeEvent
void changeEvent(QEvent *e)
Definition
palette_grid_widget.cpp:185
PaletteGridWidget::colorButtons
QMap< QPalette::ColorGroup, QMap< QPalette::ColorRole, ColorButton * > > colorButtons
Definition
palette_grid_widget.h:37
PaletteGridWidget::layout
QVBoxLayout * layout
Definition
palette_grid_widget.h:41
PaletteGridWidget::paletteChanged
void paletteChanged()
PaletteGridWidget::scroll
QScrollArea * scroll
Definition
palette_grid_widget.h:39
PaletteGridWidget::PaletteGridWidget
PaletteGridWidget(QWidget *parent=nullptr)
Definition
palette_grid_widget.cpp:66
PaletteGridWidget::appColorButtons
QMap< AppColor::Role, ColorButton * > appColorButtons
Definition
palette_grid_widget.h:38
QMap
Definition
game.h:18
PaletteConfig
Definition
theme_config.h:39
theme_config.h
cockatrice
src
interface
palette_editor
palette_grid_widget.h
Generated by
1.18.0