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
deck_analytics_widget.h
Go to the documentation of this file.
1
6
7
#ifndef DECK_ANALYTICS_WIDGET_H
8
#define DECK_ANALYTICS_WIDGET_H
9
10
#include <QJsonObject>
11
#include <QList>
12
#include <QString>
13
#include <QVector>
14
#include <QWidget>
15
#include <qtmetamacros.h>
16
17
class
LayoutInspector;
18
class
AbstractAnalyticsPanelWidget
;
19
class
DeckListStatisticsAnalyzer
;
20
class
FlowWidget
;
21
class
QCheckBox;
22
class
QPushButton;
23
class
QScrollArea;
24
class
QVBoxLayout;
25
class
ResizablePanel
;
26
27
class
DeckAnalyticsWidget
:
public
QWidget
28
{
29
Q_OBJECT
30
31
public
slots:
32
void
updateDisplays
();
33
34
public
:
35
explicit
DeckAnalyticsWidget
(QWidget *parent,
DeckListStatisticsAnalyzer
*analyzer);
36
void
retranslateUi
();
37
void
includeSideboardChanged
(
bool
checked);
38
39
private
slots:
40
void
onAddPanel
();
41
void
onRemoveSelected
();
42
void
onPanelDropped
(
ResizablePanel
*dragged,
ResizablePanel
*target,
bool
insertBefore);
43
void
saveLayout
();
44
void
loadLayout
();
45
void
addDefaultPanels
();
46
bool
loadLayoutInternal
();
47
void
clearPanels
();
48
49
protected
:
50
bool
eventFilter
(QObject *obj, QEvent *event)
override
;
51
void
selectWrapper
(
ResizablePanel
*panel);
52
int
indexOfSelectedWrapper
()
const
;
53
54
private
:
55
void
addPanelInstance
(
const
QString &typeId,
AbstractAnalyticsPanelWidget
*panel,
const
QJsonObject &cfg = {});
56
57
QVBoxLayout *
layout
;
58
FlowWidget
*
controlContainer
;
59
60
QPushButton *
addButton
;
61
QPushButton *
removeButton
;
62
QPushButton *
saveButton
;
63
QPushButton *
loadButton
;
64
65
QCheckBox *
includeSideboardCheckBox
;
66
67
QScrollArea *
scrollArea
;
68
QWidget *
panelContainer
;
69
QVBoxLayout *
panelLayout
;
70
71
QVector<ResizablePanel *>
panelWrappers
;
72
ResizablePanel
*
selectedWrapper
=
nullptr
;
73
74
DeckListStatisticsAnalyzer
*
statsAnalyzer
;
75
LayoutInspector *
insp
=
nullptr
;
76
};
77
78
#endif
// DECK_ANALYTICS_WIDGET_H
AbstractAnalyticsPanelWidget
Definition
abstract_analytics_panel_widget.h:18
DeckAnalyticsWidget::includeSideboardChanged
void includeSideboardChanged(bool checked)
Definition
deck_analytics_widget.cpp:84
DeckAnalyticsWidget::selectWrapper
void selectWrapper(ResizablePanel *panel)
Definition
deck_analytics_widget.cpp:264
DeckAnalyticsWidget::selectedWrapper
ResizablePanel * selectedWrapper
Definition
deck_analytics_widget.h:72
DeckAnalyticsWidget::insp
LayoutInspector * insp
Definition
deck_analytics_widget.h:75
DeckAnalyticsWidget::panelContainer
QWidget * panelContainer
Definition
deck_analytics_widget.h:68
DeckAnalyticsWidget::indexOfSelectedWrapper
int indexOfSelectedWrapper() const
Definition
deck_analytics_widget.cpp:282
DeckAnalyticsWidget::eventFilter
bool eventFilter(QObject *obj, QEvent *event) override
Definition
deck_analytics_widget.cpp:251
DeckAnalyticsWidget::onAddPanel
void onAddPanel()
Definition
deck_analytics_widget.cpp:95
DeckAnalyticsWidget::controlContainer
FlowWidget * controlContainer
Definition
deck_analytics_widget.h:58
DeckAnalyticsWidget::saveLayout
void saveLayout()
Definition
deck_analytics_widget.cpp:154
DeckAnalyticsWidget::onPanelDropped
void onPanelDropped(ResizablePanel *dragged, ResizablePanel *target, bool insertBefore)
Definition
deck_analytics_widget.cpp:290
DeckAnalyticsWidget::loadLayout
void loadLayout()
Definition
deck_analytics_widget.cpp:170
DeckAnalyticsWidget::includeSideboardCheckBox
QCheckBox * includeSideboardCheckBox
Definition
deck_analytics_widget.h:65
DeckAnalyticsWidget::addButton
QPushButton * addButton
Definition
deck_analytics_widget.h:60
DeckAnalyticsWidget::layout
QVBoxLayout * layout
Definition
deck_analytics_widget.h:57
DeckAnalyticsWidget::scrollArea
QScrollArea * scrollArea
Definition
deck_analytics_widget.h:67
DeckAnalyticsWidget::loadButton
QPushButton * loadButton
Definition
deck_analytics_widget.h:63
DeckAnalyticsWidget::removeButton
QPushButton * removeButton
Definition
deck_analytics_widget.h:61
DeckAnalyticsWidget::loadLayoutInternal
bool loadLayoutInternal()
Definition
deck_analytics_widget.cpp:203
DeckAnalyticsWidget::retranslateUi
void retranslateUi()
Definition
deck_analytics_widget.cpp:75
DeckAnalyticsWidget::addDefaultPanels
void addDefaultPanels()
Definition
deck_analytics_widget.cpp:177
DeckAnalyticsWidget::updateDisplays
void updateDisplays()
Definition
deck_analytics_widget.cpp:90
DeckAnalyticsWidget::saveButton
QPushButton * saveButton
Definition
deck_analytics_widget.h:62
DeckAnalyticsWidget::DeckAnalyticsWidget
DeckAnalyticsWidget(QWidget *parent, DeckListStatisticsAnalyzer *analyzer)
Definition
deck_analytics_widget.cpp:27
DeckAnalyticsWidget::clearPanels
void clearPanels()
Definition
deck_analytics_widget.cpp:242
DeckAnalyticsWidget::panelWrappers
QVector< ResizablePanel * > panelWrappers
Definition
deck_analytics_widget.h:71
DeckAnalyticsWidget::onRemoveSelected
void onRemoveSelected()
Definition
deck_analytics_widget.cpp:141
DeckAnalyticsWidget::addPanelInstance
void addPanelInstance(const QString &typeId, AbstractAnalyticsPanelWidget *panel, const QJsonObject &cfg={})
Definition
deck_analytics_widget.cpp:121
DeckAnalyticsWidget::statsAnalyzer
DeckListStatisticsAnalyzer * statsAnalyzer
Definition
deck_analytics_widget.h:74
DeckAnalyticsWidget::panelLayout
QVBoxLayout * panelLayout
Definition
deck_analytics_widget.h:69
DeckListStatisticsAnalyzer
Definition
deck_list_statistics_analyzer.h:26
FlowWidget
Definition
flow_widget.h:27
ResizablePanel
Definition
resizable_panel.h:15
cockatrice
src
interface
widgets
deck_analytics
deck_analytics_widget.h
Generated by
1.18.0