20#ifndef ORES_QT_CODING_SCHEME_DETAIL_DIALOG_HPP
21#define ORES_QT_CODING_SCHEME_DETAIL_DIALOG_HPP
24#include "ores.qt/ClientManager.hpp"
25#include "ores.qt/DetailDialogBase.hpp"
26#include "ores.qt/ProvenanceWidget.hpp"
27#include "ores.logging/make_logger.hpp"
28#include "ores.dq.api/domain/coding_scheme.hpp"
31class CodingSchemeDetailDialog;
36class CodingSchemeDetailDialog final :
public DetailDialogBase {
40 inline static std::string_view logger_name =
41 "ores.qt.coding_scheme_detail_dialog";
43 [[nodiscard]]
static auto& lg() {
45 static auto instance = make_logger(logger_name);
50 explicit CodingSchemeDetailDialog(QWidget* parent =
nullptr);
51 ~CodingSchemeDetailDialog()
override;
53 void setClientManager(ClientManager* cm) { clientManager_ = cm; }
54 void setUsername(
const std::string& username) { username_ = username; }
55 void setCreateMode(
bool create);
57 void setReadOnly(
bool readOnly);
58 void loadLookupData();
61 void schemeSaved(
const QString& code);
62 void schemeDeleted(
const QString& code);
65 QTabWidget* tabWidget()
const override;
66 QWidget* provenanceTab()
const override;
67 ProvenanceWidget* provenanceWidget()
const override;
71 void onDeleteClicked();
74 void setupConnections();
77 Ui::CodingSchemeDetailDialog* ui_;
78 ClientManager* clientManager_;
79 std::string username_;
Implements logging infrastructure for ORE Studio.
Definition boost_severity.hpp:28
Qt-based graphical user interface for ORE Studio.
Definition AccountController.hpp:32
Defines a coding or identification standard used to identify entities.
Definition coding_scheme.hpp:36