Cockatrice
2026-04-21-Development-2.11.0-beta.61
A virtual tabletop for multiplayer card games
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 "
abstract_analytics_panel_widget.h
"
11
#include "
deck_list_statistics_analyzer.h
"
12
#include "
resizable_panel.h
"
13
14
#include <QCheckBox>
15
#include <QJsonObject>
16
#include <QScrollArea>
17
#include <QVBoxLayout>
18
#include <QVector>
19
#include <QWidget>
20
21
class
LayoutInspector;
22
23
class
DeckAnalyticsWidget
:
public
QWidget
24
{
25
Q_OBJECT
26
27
public
slots:
28
void
updateDisplays
();
29
30
public
:
31
explicit
DeckAnalyticsWidget
(QWidget *parent,
DeckListStatisticsAnalyzer
*analyzer);
32
void
retranslateUi
();
33
void
includeSideboardChanged
(
bool
checked);
34
35
private
slots:
36
void
onAddPanel
();
37
void
onRemoveSelected
();
38
void
onPanelDropped
(
ResizablePanel
*dragged,
ResizablePanel
*target,
bool
insertBefore);
39
void
saveLayout
();
40
void
loadLayout
();
41
void
addDefaultPanels
();
42
bool
loadLayoutInternal
();
43
void
clearPanels
();
44
45
protected
:
46
bool
eventFilter
(QObject *obj, QEvent *event)
override
;
47
void
selectWrapper
(
ResizablePanel
*panel);
48
int
indexOfSelectedWrapper
()
const
;
49
50
private
:
51
void
addPanelInstance
(
const
QString &typeId,
AbstractAnalyticsPanelWidget
*panel,
const
QJsonObject &cfg = {});
52
53
QVBoxLayout *
layout
;
54
QWidget *
controlContainer
;
55
QHBoxLayout *
controlLayout
;
56
57
QPushButton *
addButton
;
58
QPushButton *
removeButton
;
59
QPushButton *
saveButton
;
60
QPushButton *
loadButton
;
61
62
QCheckBox *
includeSideboardCheckBox
;
63
64
QScrollArea *
scrollArea
;
65
QWidget *
panelContainer
;
66
QVBoxLayout *
panelLayout
;
67
68
QVector<ResizablePanel *>
panelWrappers
;
69
ResizablePanel
*
selectedWrapper
=
nullptr
;
70
71
DeckListStatisticsAnalyzer
*
statsAnalyzer
;
72
LayoutInspector *
insp
=
nullptr
;
73
};
74
75
#endif
// DECK_ANALYTICS_WIDGET_H
abstract_analytics_panel_widget.h
AbstractAnalyticsPanelWidget
Definition
abstract_analytics_panel_widget.h:14
DeckAnalyticsWidget::includeSideboardChanged
void includeSideboardChanged(bool checked)
Definition
deck_analytics_widget.cpp:77
DeckAnalyticsWidget::selectWrapper
void selectWrapper(ResizablePanel *panel)
Definition
deck_analytics_widget.cpp:257
DeckAnalyticsWidget::selectedWrapper
ResizablePanel * selectedWrapper
Definition
deck_analytics_widget.h:69
DeckAnalyticsWidget::insp
LayoutInspector * insp
Definition
deck_analytics_widget.h:72
DeckAnalyticsWidget::controlLayout
QHBoxLayout * controlLayout
Definition
deck_analytics_widget.h:55
DeckAnalyticsWidget::panelContainer
QWidget * panelContainer
Definition
deck_analytics_widget.h:65
DeckAnalyticsWidget::indexOfSelectedWrapper
int indexOfSelectedWrapper() const
Definition
deck_analytics_widget.cpp:275
DeckAnalyticsWidget::controlContainer
QWidget * controlContainer
Definition
deck_analytics_widget.h:54
DeckAnalyticsWidget::eventFilter
bool eventFilter(QObject *obj, QEvent *event) override
Definition
deck_analytics_widget.cpp:244
DeckAnalyticsWidget::onAddPanel
void onAddPanel()
Definition
deck_analytics_widget.cpp:88
DeckAnalyticsWidget::saveLayout
void saveLayout()
Definition
deck_analytics_widget.cpp:147
DeckAnalyticsWidget::onPanelDropped
void onPanelDropped(ResizablePanel *dragged, ResizablePanel *target, bool insertBefore)
Definition
deck_analytics_widget.cpp:283
DeckAnalyticsWidget::loadLayout
void loadLayout()
Definition
deck_analytics_widget.cpp:163
DeckAnalyticsWidget::includeSideboardCheckBox
QCheckBox * includeSideboardCheckBox
Definition
deck_analytics_widget.h:62
DeckAnalyticsWidget::addButton
QPushButton * addButton
Definition
deck_analytics_widget.h:57
DeckAnalyticsWidget::layout
QVBoxLayout * layout
Definition
deck_analytics_widget.h:53
DeckAnalyticsWidget::scrollArea
QScrollArea * scrollArea
Definition
deck_analytics_widget.h:64
DeckAnalyticsWidget::loadButton
QPushButton * loadButton
Definition
deck_analytics_widget.h:60
DeckAnalyticsWidget::removeButton
QPushButton * removeButton
Definition
deck_analytics_widget.h:58
DeckAnalyticsWidget::loadLayoutInternal
bool loadLayoutInternal()
Definition
deck_analytics_widget.cpp:196
DeckAnalyticsWidget::retranslateUi
void retranslateUi()
Definition
deck_analytics_widget.cpp:68
DeckAnalyticsWidget::addDefaultPanels
void addDefaultPanels()
Definition
deck_analytics_widget.cpp:170
DeckAnalyticsWidget::updateDisplays
void updateDisplays()
Definition
deck_analytics_widget.cpp:83
DeckAnalyticsWidget::saveButton
QPushButton * saveButton
Definition
deck_analytics_widget.h:59
DeckAnalyticsWidget::DeckAnalyticsWidget
DeckAnalyticsWidget(QWidget *parent, DeckListStatisticsAnalyzer *analyzer)
Definition
deck_analytics_widget.cpp:20
DeckAnalyticsWidget::clearPanels
void clearPanels()
Definition
deck_analytics_widget.cpp:235
DeckAnalyticsWidget::panelWrappers
QVector< ResizablePanel * > panelWrappers
Definition
deck_analytics_widget.h:68
DeckAnalyticsWidget::onRemoveSelected
void onRemoveSelected()
Definition
deck_analytics_widget.cpp:134
DeckAnalyticsWidget::addPanelInstance
void addPanelInstance(const QString &typeId, AbstractAnalyticsPanelWidget *panel, const QJsonObject &cfg={})
Definition
deck_analytics_widget.cpp:114
DeckAnalyticsWidget::statsAnalyzer
DeckListStatisticsAnalyzer * statsAnalyzer
Definition
deck_analytics_widget.h:71
DeckAnalyticsWidget::panelLayout
QVBoxLayout * panelLayout
Definition
deck_analytics_widget.h:66
DeckListStatisticsAnalyzer
Definition
deck_list_statistics_analyzer.h:24
ResizablePanel
Definition
resizable_panel.h:19
deck_list_statistics_analyzer.h
resizable_panel.h
cockatrice
src
interface
widgets
deck_analytics
deck_analytics_widget.h
Generated by
1.14.0