summaryrefslogtreecommitdiffstats
path: root/src/yuzu/applets/qt_error.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/yuzu/applets/qt_error.h')
-rw-r--r--src/yuzu/applets/qt_error.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/yuzu/applets/qt_error.h b/src/yuzu/applets/qt_error.h
new file mode 100644
index 000000000..8bd895a32
--- /dev/null
+++ b/src/yuzu/applets/qt_error.h
@@ -0,0 +1,33 @@
+// Copyright 2019 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <QObject>
+
+#include "core/frontend/applets/error.h"
+
+class GMainWindow;
+
+class QtErrorDisplay final : public QObject, public Core::Frontend::ErrorApplet {
+ Q_OBJECT
+
+public:
+ explicit QtErrorDisplay(GMainWindow& parent);
+ ~QtErrorDisplay() override;
+
+ void ShowError(ResultCode error, std::function<void()> finished) const override;
+ void ShowErrorWithTimestamp(ResultCode error, std::chrono::seconds time,
+ std::function<void()> finished) const override;
+ void ShowCustomErrorText(ResultCode error, std::string dialog_text, std::string fullscreen_text,
+ std::function<void()> finished) const override;
+
+signals:
+ void MainWindowDisplayError(QString error_code, QString error_text) const;
+
+private:
+ void MainWindowFinishedError();
+
+ mutable std::function<void()> callback;
+};