20#ifndef ORES_QT_SYSTEM_SETTING_CONTROLLER_HPP
21#define ORES_QT_SYSTEM_SETTING_CONTROLLER_HPP
24#include "ores.qt/EntityController.hpp"
25#include "ores.logging/make_logger.hpp"
26#include "ores.variability.api/domain/system_setting.hpp"
30class SystemSettingMdiWindow;
31class SystemSettingDetailDialog;
32class ChangeReasonCache;
44 inline static std::string_view logger_name =
45 "ores.qt.system_setting_controller";
47 [[nodiscard]]
static auto& lg() {
49 static auto instance = make_logger(logger_name);
55 QMainWindow* mainWindow,
59 const QString& username,
60 QObject* parent =
nullptr);
69 void onAddNewRequested();
71 void onShowHistory(
const QString& name);
72 void onSystemSettingSaved(
const QString& name);
73 void onSystemSettingDeleted(
const QString& name);
74 void onNotificationReceived(
const QString& eventType,
const QDateTime& timestamp,
75 const QStringList& entityIds,
const QString& tenantId);
82 bool createMode =
false);
83 void showHistoryWindow(
const QString& name);
84 void refreshListWindow();
Implements logging infrastructure for ORE Studio.
Definition boost_severity.hpp:28
Qt-based graphical user interface for ORE Studio.
Definition AboutDialog.hpp:29
Shared cache for change reasons used across all entity dialogs.
Definition ChangeReasonCache.hpp:47
Manages the lifecycle of the NATS client and login state.
Definition ClientManager.hpp:109
QMdiSubWindow that can be detached to become a floating window.
Definition DetachableMdiSubWindow.hpp:39
Abstract base class for entity controllers.
Definition EntityController.hpp:50
Controller for system setting management windows.
Definition SystemSettingController.hpp:40
void closeAllWindows() override
Closes all windows managed by this controller. Must be implemented by derived classes.
Definition SystemSettingController.cpp:151
void reloadListWindow() override
Reloads the list window. Must be implemented by derived classes.
Definition SystemSettingController.cpp:167
void showListWindow() override
Shows the main list window for this entity. Must be implemented by derived classes.
Definition SystemSettingController.cpp:98
MDI window for displaying and managing system settings.
Definition SystemSettingMdiWindow.hpp:41
Represents a typed system setting in the domain layer.
Definition system_setting.hpp:35