aboutsummaryrefslogtreecommitdiffstats
path: root/src/GpgFrontendContext.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/GpgFrontendContext.cpp (renamed from src/before_exit.cpp)39
1 files changed, 33 insertions, 6 deletions
diff --git a/src/before_exit.cpp b/src/GpgFrontendContext.cpp
index e5e4ed63..72d2b0c1 100644
--- a/src/before_exit.cpp
+++ b/src/GpgFrontendContext.cpp
@@ -26,10 +26,37 @@
*
*/
-#include "core/function/GlobalSettingStation.h"
+#include "GpgFrontendContext.h"
-/**
- * @brief Actions performed before exiting the application
- *
- */
-void BeforeExit() {}
+#include <qcoreapplication.h>
+
+#include <memory>
+
+#include "ui/GpgFrontendApplication.h"
+
+namespace GpgFrontend {
+
+std::shared_ptr<GpgFrontendContext> GpgFrontendContext::global_context =
+ nullptr;
+
+auto GpgFrontendContext::CreateInstance(int argc, char** argv)
+ -> std::weak_ptr<GpgFrontendContext> {
+ global_context = std::make_shared<GpgFrontendContext>();
+ global_context->argc = argc;
+ global_context->argv = argv;
+ return global_context;
+}
+
+auto GpgFrontendContext::GetInstance() -> std::weak_ptr<GpgFrontendContext> {
+ return global_context;
+}
+
+void GpgFrontendContext::InitCoreApplication() {
+ app = std::make_unique<QCoreApplication>(argc, argv);
+}
+
+void GpgFrontendContext::InitGUIApplication() {
+ app = std::make_unique<UI::GpgFrontendApplication>(argc, argv);
+}
+
+} // namespace GpgFrontend \ No newline at end of file