20#ifndef ORES_QT_SESSION_HISTORY_DIALOG_HPP
21#define ORES_QT_SESSION_HISTORY_DIALOG_HPP
26#include <QAbstractTableModel>
27#include <QFutureWatcher>
29#include <boost/uuid/uuid.hpp>
30#include "ores.qt/ClientManager.hpp"
31#include "ores.logging/make_logger.hpp"
32#include "ores.iam/domain/session.hpp"
45 int rowCount(
const QModelIndex& parent = QModelIndex())
const override;
46 int columnCount(
const QModelIndex& parent = QModelIndex())
const override;
47 QVariant data(
const QModelIndex& index,
int role = Qt::DisplayRole)
const override;
48 QVariant headerData(
int section, Qt::Orientation orientation,
49 int role = Qt::DisplayRole)
const override;
51 void setSessions(
const std::vector<iam::domain::session>& sessions);
67 std::vector<iam::domain::session> sessions_;
80 inline static std::string_view logger_name =
81 "ores.qt.session_history_dialog";
83 [[nodiscard]]
static auto& lg() {
85 static auto instance = make_logger(logger_name);
91 QWidget* parent =
nullptr);
100 void setAccount(
const boost::uuids::uuid& accountId,
101 const QString& username);
109 void statusMessage(
const QString& message);
110 void errorMessage(
const QString& message);
113 void onSessionsLoaded();
118 QTableView* tableView_;
121 boost::uuids::uuid accountId_;
126 std::vector<iam::domain::session> sessions;
127 std::uint32_t total_count;
130 QFutureWatcher<FetchResult>* watcher_;
Implements logging infrastructure for ORE Studio.
Definition boost_severity.hpp:28
Qt-based graphical user interface for ORE Studio.
Definition AboutDialog.hpp:35
Manages the lifecycle of the network client and IO context.
Definition ClientManager.hpp:90
Table model for displaying session history.
Definition SessionHistoryDialog.hpp:39
Dialog for displaying session history for an account.
Definition SessionHistoryDialog.hpp:76
void setAccount(const boost::uuids::uuid &accountId, const QString &username)
Set the account to display sessions for.
Definition SessionHistoryDialog.cpp:206
void refresh()
Refresh the session list from the server.
Definition SessionHistoryDialog.cpp:214