20#ifndef ORES_QT_ACCOUNT_HISTORY_DIALOG_HPP
21#define ORES_QT_ACCOUNT_HISTORY_DIALOG_HPP
28#include "ores.qt/ClientManager.hpp"
29#include "ores.accounts/domain/account_version.hpp"
30#include "ores.accounts/domain/account_version_history.hpp"
31#include "ores.utility/log/make_logger.hpp"
32#include "ui_AccountHistoryDialog.h"
35class AccountHistoryDialog;
47 inline static std::string_view logger_name =
48 "ores.qt.account_history_dialog";
50 [[nodiscard]]
static auto& lg() {
52 static auto instance = make_logger(logger_name);
56 const QIcon& getHistoryIcon()
const;
61 QWidget* parent =
nullptr);
66 QSize sizeHint()
const override;
69 void statusChanged(
const QString& message);
70 void errorOccurred(
const QString& error_message);
73 void onVersionSelected(
int index);
74 void onHistoryLoaded();
75 void onHistoryLoadError(
const QString& error);
78 void displayChangesTab(
int version_index);
79 void displayFullDetailsTab(
int version_index);
86 using DiffResult = QVector<QPair<QString, QPair<QString, QString>>>;
87 DiffResult calculateDiff(
91 std::unique_ptr<Ui::AccountHistoryDialog> ui_;
Qt-based graphical user interface for ORE Studio.
Definition AboutDialog.hpp:35
Implements logging for ORE Studio.
Definition lifecycle_manager.hpp:30
Represents a specific version of an account with metadata.
Definition account_version.hpp:31
Contains the full version history for an account.
Definition account_version_history.hpp:32
Widget for displaying account version history.
Definition AccountHistoryDialog.hpp:43
Manages the lifecycle of the network client and IO context.
Definition ClientManager.hpp:56