add new method to replay tree widget

This commit is contained in:
RickyRister 2024-12-24 20:29:02 -08:00
parent 4ca1fc083d
commit f335fae900
2 changed files with 10 additions and 1 deletions

View file

@ -309,6 +309,15 @@ RemoteReplayList_TreeWidget::RemoteReplayList_TreeWidget(AbstractClient *_client
setSelectionMode(QAbstractItemView::ExtendedSelection);
}
/**
* Gets the replay at the given index
* @return The replay. Returns nullptr if there is no replay at the index.
*/
ServerInfo_Replay const *RemoteReplayList_TreeWidget::getReplay(const QModelIndex &ind) const
{
return treeModel->getReplay(proxyModel->mapToSource(ind));
}
/**
* Gets all currently selected replays.
* Any selection that isn't a replay file (e.g. a folder) will appear as a nullptr in the list.

View file

@ -107,10 +107,10 @@ class RemoteReplayList_TreeWidget : public QTreeView
private:
RemoteReplayList_TreeModel *treeModel;
QSortFilterProxyModel *proxyModel;
ServerInfo_Replay const *getNode(const QModelIndex &ind) const;
public:
RemoteReplayList_TreeWidget(AbstractClient *_client, QWidget *parent = nullptr);
ServerInfo_Replay const *getReplay(const QModelIndex &ind) const;
QList<ServerInfo_Replay const *> getSelectedReplays() const;
QSet<ServerInfo_ReplayMatch const *> getSelectedReplayMatches() const;
void refreshTree();