20#ifndef ORES_QT_BOOK_STATUS_MDI_WINDOW_HPP
21#define ORES_QT_BOOK_STATUS_MDI_WINDOW_HPP
25#include <QSortFilterProxyModel>
26#include "ores.qt/EntityListMdiWindow.hpp"
27#include "ores.qt/ClientManager.hpp"
28#include "ores.qt/ClientBookStatusModel.hpp"
29#include "ores.logging/make_logger.hpp"
30#include "ores.refdata.api/domain/book_status.hpp"
44 inline static std::string_view logger_name =
45 "ores.qt.book_status_mdi_window";
47 [[nodiscard]]
static auto& lg() {
49 static auto instance = make_logger(logger_name);
56 const QString& username,
57 QWidget* parent =
nullptr);
61 void doReload()
override;
64 void statusChanged(
const QString& message);
65 void errorOccurred(
const QString& error_message);
67 void addNewRequested();
68 void statusDeleted(
const QString& code);
74 void deleteSelected();
75 void viewHistorySelected();
79 void onLoadError(
const QString& error_message,
const QString& details = {});
80 void onSelectionChanged();
81 void onDoubleClicked(
const QModelIndex& index);
85 return tr(
"Refresh book statuses");
92 void setupConnections();
93 void updateActionStates();
99 QTableView* tableView_;
101 QSortFilterProxyModel* proxyModel_;
104 QAction* reloadAction_;
106 QAction* editAction_;
107 QAction* deleteAction_;
108 QAction* historyAction_;
Implements logging infrastructure for ORE Studio.
Definition boost_severity.hpp:28
Qt-based graphical user interface for ORE Studio.
Definition AboutDialog.hpp:29
MDI window for displaying and managing book statuses.
Definition BookStatusMdiWindow.hpp:40
QString normalRefreshTooltip() const override
Get the normal (non-stale) tooltip text for the refresh action.
Definition BookStatusMdiWindow.hpp:84
Model for displaying book statuses fetched from the server.
Definition ClientBookStatusModel.hpp:43
Manages the lifecycle of the NATS client and login state.
Definition ClientManager.hpp:109
Base class for entity list MDI windows providing stale indicator support.
Definition EntityListMdiWindow.hpp:62
Lifecycle states for book records.
Definition book_status.hpp:38