Cockatrice
2026-01-14-Development-2.11.0-beta.46
A cross-platform 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 <QJsonObject>
15
#include <QScrollArea>
16
#include <QVBoxLayout>
17
#include <QVector>
18
#include <QWidget>
19
20
class
LayoutInspector;
21
22
class
DeckAnalyticsWidget
:
public
QWidget
23
{
24
Q_OBJECT
25
26
public
slots:
27
void
updateDisplays
();
28
29
public
:
30
explicit
DeckAnalyticsWidget
(QWidget *parent,
DeckListStatisticsAnalyzer
*analyzer);
31
void
retranslateUi
();
32
33
private
slots:
34
void
onAddPanel
();
35
void
onRemoveSelected
();
36
void
onPanelDropped
(
ResizablePanel
*dragged,
ResizablePanel
*target,
bool
insertBefore);
37
void
saveLayout
();
38
void
loadLayout
();
39
void
addDefaultPanels
();
40
bool
loadLayoutInternal
();
41
void
clearPanels
();
42
43
protected
:
44
bool
eventFilter
(QObject *obj, QEvent *event)
override
;
45
void
selectWrapper
(
ResizablePanel
*panel);
46
int
indexOfSelectedWrapper
()
const
;
47
48
private
:
49
void
addPanelInstance
(
const
QString &typeId,
AbstractAnalyticsPanelWidget
*panel,
const
QJsonObject &cfg = {});
50
51
QVBoxLayout *
layout
;
52
QWidget *
controlContainer
;
53
QHBoxLayout *
controlLayout
;
54
55
QPushButton *
addButton
;
56
QPushButton *
removeButton
;
57
QPushButton *
saveButton
;
58
QPushButton *
loadButton
;
59
60
QScrollArea *
scrollArea
;
61
QWidget *
panelContainer
;
62
QVBoxLayout *
panelLayout
;
63
64
QVector<ResizablePanel *>
panelWrappers
;
65
ResizablePanel
*
selectedWrapper
=
nullptr
;
66
67
DeckListStatisticsAnalyzer
*
statsAnalyzer
;
68
LayoutInspector *
insp
=
nullptr
;
69
};
70
71
#endif
// DECK_ANALYTICS_WIDGET_H
abstract_analytics_panel_widget.h
AbstractAnalyticsPanelWidget
Definition
abstract_analytics_panel_widget.h:14
DeckAnalyticsWidget::selectWrapper
void selectWrapper(ResizablePanel *panel)
Definition
deck_analytics_widget.cpp:245
DeckAnalyticsWidget::selectedWrapper
ResizablePanel * selectedWrapper
Definition
deck_analytics_widget.h:65
DeckAnalyticsWidget::insp
LayoutInspector * insp
Definition
deck_analytics_widget.h:68
DeckAnalyticsWidget::controlLayout
QHBoxLayout * controlLayout
Definition
deck_analytics_widget.h:53
DeckAnalyticsWidget::panelContainer
QWidget * panelContainer
Definition
deck_analytics_widget.h:61
DeckAnalyticsWidget::indexOfSelectedWrapper
int indexOfSelectedWrapper() const
Definition
deck_analytics_widget.cpp:263
DeckAnalyticsWidget::controlContainer
QWidget * controlContainer
Definition
deck_analytics_widget.h:52
DeckAnalyticsWidget::eventFilter
bool eventFilter(QObject *obj, QEvent *event) override
Definition
deck_analytics_widget.cpp:232
DeckAnalyticsWidget::onAddPanel
void onAddPanel()
Definition
deck_analytics_widget.cpp:76
DeckAnalyticsWidget::saveLayout
void saveLayout()
Definition
deck_analytics_widget.cpp:135
DeckAnalyticsWidget::onPanelDropped
void onPanelDropped(ResizablePanel *dragged, ResizablePanel *target, bool insertBefore)
Definition
deck_analytics_widget.cpp:271
DeckAnalyticsWidget::loadLayout
void loadLayout()
Definition
deck_analytics_widget.cpp:151
DeckAnalyticsWidget::addButton
QPushButton * addButton
Definition
deck_analytics_widget.h:55
DeckAnalyticsWidget::layout
QVBoxLayout * layout
Definition
deck_analytics_widget.h:51
DeckAnalyticsWidget::scrollArea
QScrollArea * scrollArea
Definition
deck_analytics_widget.h:60
DeckAnalyticsWidget::loadButton
QPushButton * loadButton
Definition
deck_analytics_widget.h:58
DeckAnalyticsWidget::removeButton
QPushButton * removeButton
Definition
deck_analytics_widget.h:56
DeckAnalyticsWidget::loadLayoutInternal
bool loadLayoutInternal()
Definition
deck_analytics_widget.cpp:184
DeckAnalyticsWidget::retranslateUi
void retranslateUi()
Definition
deck_analytics_widget.cpp:63
DeckAnalyticsWidget::addDefaultPanels
void addDefaultPanels()
Definition
deck_analytics_widget.cpp:158
DeckAnalyticsWidget::updateDisplays
void updateDisplays()
Definition
deck_analytics_widget.cpp:71
DeckAnalyticsWidget::saveButton
QPushButton * saveButton
Definition
deck_analytics_widget.h:57
DeckAnalyticsWidget::DeckAnalyticsWidget
DeckAnalyticsWidget(QWidget *parent, DeckListStatisticsAnalyzer *analyzer)
Definition
deck_analytics_widget.cpp:20
DeckAnalyticsWidget::clearPanels
void clearPanels()
Definition
deck_analytics_widget.cpp:223
DeckAnalyticsWidget::panelWrappers
QVector< ResizablePanel * > panelWrappers
Definition
deck_analytics_widget.h:64
DeckAnalyticsWidget::onRemoveSelected
void onRemoveSelected()
Definition
deck_analytics_widget.cpp:122
DeckAnalyticsWidget::addPanelInstance
void addPanelInstance(const QString &typeId, AbstractAnalyticsPanelWidget *panel, const QJsonObject &cfg={})
Definition
deck_analytics_widget.cpp:102
DeckAnalyticsWidget::statsAnalyzer
DeckListStatisticsAnalyzer * statsAnalyzer
Definition
deck_analytics_widget.h:67
DeckAnalyticsWidget::panelLayout
QVBoxLayout * panelLayout
Definition
deck_analytics_widget.h:62
DeckListStatisticsAnalyzer
Definition
deck_list_statistics_analyzer.h:23
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