20#ifndef ORES_QT_PUBLICATION_HISTORY_DIALOG_HPP
21#define ORES_QT_PUBLICATION_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.dq/domain/publication.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 setPublications(
const std::vector<dq::domain::publication>& publications);
67 std::vector<dq::domain::publication> publications_;
80 inline static std::string_view logger_name =
81 "ores.qt.publication_history_dialog";
83 [[nodiscard]]
static auto& lg() {
85 static auto instance = make_logger(logger_name);
91 QWidget* parent =
nullptr);
100 void statusMessage(
const QString& message);
101 void errorMessage(
const QString& message);
104 void onPublicationsLoaded();
109 QTableView* tableView_;
115 std::vector<dq::domain::publication> publications;
118 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 publication history.
Definition PublicationHistoryDialog.hpp:39
Dialog for displaying publication history.
Definition PublicationHistoryDialog.hpp:76
void refresh()
Refresh the publication list from the server.
Definition PublicationHistoryDialog.cpp:174