nsbaci 1.0
Loading...
Searching...
No Matches
errorDialogFactory.h
Go to the documentation of this file.
1
65
66#ifndef NSBACI_ERRORDIALOGFACTORY_H
67#define NSBACI_ERRORDIALOGFACTORY_H
68
69#include <QMessageBox>
70#include <QWidget>
71#include <functional>
72#include <memory>
73#include <vector>
74
75#include "uiError.h"
76
77namespace nsbaci::ui {
78
91 public:
102 using DialogInvoker = std::function<QMessageBox::StandardButton()>;
103
114 static DialogInvoker getDialogFromUIError(const UIError& error,
115 QWidget* parent = nullptr);
116
124 static std::vector<DialogInvoker> getDialogsFromUIErrors(
125 const std::vector<UIError>& errors, QWidget* parent = nullptr);
126
135 static DialogInvoker getSuccessDialog(const QString& title,
136 const QString& message,
137 QWidget* parent = nullptr);
138
148 static void showErrors(const std::vector<UIError>& errors,
149 QWidget* parent = nullptr);
150
158 static QMessageBox::StandardButton showError(const UIError& error,
159 QWidget* parent = nullptr);
160
168 static void showSuccess(const QString& title, const QString& message,
169 QWidget* parent = nullptr);
170
171 private:
175 static QMessageBox::Icon iconFromSeverity(
177};
178
179} // namespace nsbaci::ui
180
181#endif // NSBACI_ERRORDIALOGFACTORY_H
Factory for creating error dialogs from UIError objects.
Definition errorDialogFactory.h:90
static DialogInvoker getDialogFromUIError(const UIError &error, QWidget *parent=nullptr)
Creates a dialog invoker from a UIError.
Definition errorDialogFactory.cpp:16
static std::vector< DialogInvoker > getDialogsFromUIErrors(const std::vector< UIError > &errors, QWidget *parent=nullptr)
Creates dialog invokers for multiple UIErrors.
Definition errorDialogFactory.cpp:43
std::function< QMessageBox::StandardButton()> DialogInvoker
Callable type that shows a dialog when invoked.
Definition errorDialogFactory.h:102
static QMessageBox::StandardButton showError(const UIError &error, QWidget *parent=nullptr)
Shows a single error dialog immediately.
Definition errorDialogFactory.cpp:62
static void showSuccess(const QString &title, const QString &message, QWidget *parent=nullptr)
Shows a success message dialog immediately.
Definition errorDialogFactory.cpp:82
static DialogInvoker getSuccessDialog(const QString &title, const QString &message, QWidget *parent=nullptr)
Creates a success message dialog invoker.
Definition errorDialogFactory.cpp:68
static void showErrors(const std::vector< UIError > &errors, QWidget *parent=nullptr)
Shows all error dialogs sequentially.
Definition errorDialogFactory.cpp:55
ErrSeverity
Severity levels for errors.
Definition errorTypes.h:31
User interface namespace for nsbaci.
Definition drawingWidget.cpp:18
UI-ready error representation for display in dialogs.
Definition uiError.h:31
UI Error type definitions for nsbaci.