9#ifndef REMOTEREPLAYLIST_TREEWIDGET_H
10#define REMOTEREPLAYLIST_TREEWIDGET_H
12#include <QAbstractItemModel>
19#include <libcockatrice/protocol/pb/serverinfo_replay.pb.h>
20#include <libcockatrice/protocol/pb/serverinfo_replay_match.pb.h>
21#include <qnamespace.h>
22#include <qtmetamacros.h>
26class QSortFilterProxyModel;
42 explicit Node(
const QString &_name) :
name(_name)
74 :
Node(QString::fromStdString(_replayInfo.replay_name())),
parent(_parent),
replayInfo(_replayInfo)
102 [[nodiscard]]
int rowCount(
const QModelIndex &
parent = QModelIndex())
const override;
103 [[nodiscard]]
int columnCount(
const QModelIndex & = QModelIndex())
const override
107 [[nodiscard]] QVariant
data(
const QModelIndex &
index,
int role)
const override;
108 [[nodiscard]] QVariant
109 headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole)
const override;
110 [[nodiscard]] QModelIndex
index(
int row,
int column,
const QModelIndex &
parent = QModelIndex())
const override;
111 [[nodiscard]] QModelIndex
parent(
const QModelIndex &
index)
const override;
112 [[nodiscard]] Qt::ItemFlags
flags(
const QModelIndex &
index)
const override;
Definition abstract_client.h:73
Definition remote_connection_controller.h:20
Definition dlg_manage_sets.h:29
Definition remote_replay_list_tree_widget.h:52
MatchNode(const ServerInfo_ReplayMatch &_matchInfo)
Definition remote_replay_list_tree_widget.cpp:27
const ServerInfo_ReplayMatch & getMatchInfo()
Definition remote_replay_list_tree_widget.h:60
ServerInfo_ReplayMatch matchInfo
Definition remote_replay_list_tree_widget.h:54
QString name
Definition remote_replay_list_tree_widget.h:39
Node(const QString &_name)
Definition remote_replay_list_tree_widget.h:42
QString getName() const
Definition remote_replay_list_tree_widget.h:46
Definition remote_replay_list_tree_widget.h:67
ReplayNode(const ServerInfo_Replay &_replayInfo, MatchNode *_parent)
Definition remote_replay_list_tree_widget.h:73
const ServerInfo_Replay & getReplayInfo()
Definition remote_replay_list_tree_widget.h:81
MatchNode * parent
Definition remote_replay_list_tree_widget.h:69
ServerInfo_Replay replayInfo
Definition remote_replay_list_tree_widget.h:70
MatchNode * getParent() const
Definition remote_replay_list_tree_widget.h:77
Definition remote_replay_list_tree_widget.h:31
void removeMatchInfo(int gameId)
Definition remote_replay_list_tree_widget.cpp:320
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
Definition remote_replay_list_tree_widget.cpp:152
Qt::ItemFlags flags(const QModelIndex &index) const override
Definition remote_replay_list_tree_widget.cpp:220
QVariant data(const QModelIndex &index, int role) const override
Definition remote_replay_list_tree_widget.cpp:75
static const int numberOfColumns
Definition remote_replay_list_tree_widget.h:93
void clearAll()
Definition remote_replay_list_tree_widget.cpp:276
int columnCount(const QModelIndex &=QModelIndex()) const override
Definition remote_replay_list_tree_widget.h:103
AbstractClient * client
Definition remote_replay_list_tree_widget.h:87
void refreshTree()
Definition remote_replay_list_tree_widget.cpp:284
ServerInfo_ReplayMatch const * getReplayMatch(const QModelIndex &index) const
Definition remote_replay_list_tree_widget.cpp:242
ServerInfo_ReplayMatch const * getEnclosingReplayMatch(const QModelIndex &index) const
Definition remote_replay_list_tree_widget.cpp:256
QIcon dirIcon
Definition remote_replay_list_tree_widget.h:90
ServerInfo_Replay const * getReplay(const QModelIndex &index) const
Definition remote_replay_list_tree_widget.cpp:229
QModelIndex parent(const QModelIndex &index) const override
Definition remote_replay_list_tree_widget.cpp:209
int rowCount(const QModelIndex &parent=QModelIndex()) const override
Definition remote_replay_list_tree_widget.cpp:61
QList< MatchNode * > replayMatches
Definition remote_replay_list_tree_widget.h:88
RemoteReplayList_TreeModel(AbstractClient *_client, QObject *parent=nullptr)
Definition remote_replay_list_tree_widget.cpp:47
QIcon fileIcon
Definition remote_replay_list_tree_widget.h:90
void clearTree()
Definition remote_replay_list_tree_widget.cpp:292
void addMatchInfo(const ServerInfo_ReplayMatch &matchInfo)
Definition remote_replay_list_tree_widget.cpp:299
void updateMatchInfo(int gameId, const ServerInfo_ReplayMatch &matchInfo)
Definition remote_replay_list_tree_widget.cpp:308
QIcon lockIcon
Definition remote_replay_list_tree_widget.h:90
QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const override
Definition remote_replay_list_tree_widget.cpp:189
void replayListFinished(const Response &r)
Definition remote_replay_list_tree_widget.cpp:332
Definition response.proto:11
Definition serverinfo_replay_match.proto:3
Definition serverinfo_replay.proto:2