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
bar_chart_widget.h
Go to the documentation of this file.
1
#ifndef COCKATRICE_BAR_CHART_WIDGET_H
2
#define COCKATRICE_BAR_CHART_WIDGET_H
3
4
#include <QColor>
5
#include <QList>
6
#include <QString>
7
#include <QStringList>
8
#include <QVector>
9
#include <QWidget>
10
#include <qtmetamacros.h>
11
12
struct
BarSegment
13
{
14
QString
category
;
15
int
value
;
16
QStringList
cards
;
17
QColor
color
;
18
};
19
20
struct
BarData
21
{
22
QString
label
;
23
QVector<BarSegment>
segments
;
24
};
25
26
class
BarChartWidget
:
public
QWidget
27
{
28
Q_OBJECT
29
public
:
30
explicit
BarChartWidget
(QWidget *parent =
nullptr
);
31
32
void
setBars
(
const
QVector<BarData> &
bars
);
33
void
setHighest
(
int
h);
// global max for scaling
34
int
barCount
()
const
35
{
36
return
bars
.size();
37
}
38
39
protected
:
40
void
paintEvent
(QPaintEvent *event)
override
;
41
QSize
sizeHint
()
const override
;
42
QSize
minimumSizeHint
()
const override
;
43
44
void
mouseMoveEvent
(QMouseEvent *event)
override
;
45
void
leaveEvent
(QEvent *event)
override
;
46
47
private
:
48
QVector<BarData>
bars
;
49
int
highest
= 1;
// global maximum value
50
51
int
hoveredBar
= -1;
52
int
hoveredSegment
= -1;
53
};
54
55
#endif
// COCKATRICE_BAR_CHART_WIDGET_H
BarChartWidget::bars
QVector< BarData > bars
Definition
bar_chart_widget.h:48
BarChartWidget::mouseMoveEvent
void mouseMoveEvent(QMouseEvent *event) override
Definition
bar_chart_widget.cpp:164
BarChartWidget::highest
int highest
Definition
bar_chart_widget.h:49
BarChartWidget::setHighest
void setHighest(int h)
Definition
bar_chart_widget.cpp:30
BarChartWidget::setBars
void setBars(const QVector< BarData > &bars)
Definition
bar_chart_widget.cpp:24
BarChartWidget::minimumSizeHint
QSize minimumSizeHint() const override
Definition
bar_chart_widget.cpp:41
BarChartWidget::barCount
int barCount() const
Definition
bar_chart_widget.h:34
BarChartWidget::leaveEvent
void leaveEvent(QEvent *event) override
Definition
bar_chart_widget.cpp:157
BarChartWidget::paintEvent
void paintEvent(QPaintEvent *event) override
Definition
bar_chart_widget.cpp:46
BarChartWidget::hoveredSegment
int hoveredSegment
Definition
bar_chart_widget.h:52
BarChartWidget::sizeHint
QSize sizeHint() const override
Definition
bar_chart_widget.cpp:36
BarChartWidget::BarChartWidget
BarChartWidget(QWidget *parent=nullptr)
Definition
bar_chart_widget.cpp:19
BarChartWidget::hoveredBar
int hoveredBar
Definition
bar_chart_widget.h:51
BarData
Definition
bar_chart_widget.h:21
BarData::label
QString label
Definition
bar_chart_widget.h:22
BarData::segments
QVector< BarSegment > segments
Definition
bar_chart_widget.h:23
BarSegment
Definition
bar_chart_widget.h:13
BarSegment::value
int value
Definition
bar_chart_widget.h:15
BarSegment::category
QString category
Definition
bar_chart_widget.h:14
BarSegment::cards
QStringList cards
Definition
bar_chart_widget.h:16
BarSegment::color
QColor color
Definition
bar_chart_widget.h:17
cockatrice
src
interface
widgets
general
display
charts
bars
bar_chart_widget.h
Generated by
1.18.0