From ef2519242418bf2a65c55d45222097b783fb489a Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Thu, 11 Jan 2018 03:08:52 +0100 Subject: [PATCH] Ref T220, register main widget --- src/blackgui/guiapplication.cpp | 5 +++++ src/blackgui/guiapplication.h | 3 +++ src/swiftdata/swiftdata.cpp | 3 +++ src/swiftguistandard/swiftguistd.cpp | 2 ++ src/swiftlauncher/swiftlauncher.cpp | 2 ++ 5 files changed, 15 insertions(+) diff --git a/src/blackgui/guiapplication.cpp b/src/blackgui/guiapplication.cpp index 668d511cb..8f7f44938 100644 --- a/src/blackgui/guiapplication.cpp +++ b/src/blackgui/guiapplication.cpp @@ -178,6 +178,11 @@ namespace BlackGui return CGuiUtility::mainApplicationWidget(); } + void CGuiApplication::registerMainApplicationWidget(QWidget *mainWidget) + { + CGuiUtility::registerMainApplicationWidget(mainWidget); + } + QMainWindow *CGuiApplication::mainApplicationWindow() { return qobject_cast(CGuiApplication::mainApplicationWidget()); diff --git a/src/blackgui/guiapplication.h b/src/blackgui/guiapplication.h index 456868e2d..e3c912ecb 100644 --- a/src/blackgui/guiapplication.h +++ b/src/blackgui/guiapplication.h @@ -210,6 +210,9 @@ namespace BlackGui //! \copydoc BlackGui::CGuiUtility::mainApplicationWidget static QWidget *mainApplicationWidget(); + //! \copydoc BlackGui::CGuiUtility::registerMainApplicationWidget + void registerMainApplicationWidget(QWidget *mainWidget); + //! Main application window static QMainWindow *mainApplicationWindow(); diff --git a/src/swiftdata/swiftdata.cpp b/src/swiftdata/swiftdata.cpp index f6e909874..4315a527d 100644 --- a/src/swiftdata/swiftdata.cpp +++ b/src/swiftdata/swiftdata.cpp @@ -47,6 +47,9 @@ CSwiftData::CSwiftData(QWidget *parent) : CIdentifiable(this), ui(new Ui::CSwiftData) { + + Q_ASSERT_X(sGui, Q_FUNC_INFO, "Need sGui"); + sGui->registerMainApplicationWidget(this); ui->setupUi(this); this->init(); } diff --git a/src/swiftguistandard/swiftguistd.cpp b/src/swiftguistandard/swiftguistd.cpp index ec49f0c53..080b15729 100644 --- a/src/swiftguistandard/swiftguistd.cpp +++ b/src/swiftguistandard/swiftguistd.cpp @@ -72,6 +72,8 @@ SwiftGuiStd::SwiftGuiStd(BlackGui::CEnableForFramelessWindow::WindowMode windowM ui(new Ui::SwiftGuiStd) { // GUI + Q_ASSERT_X(sGui, Q_FUNC_INFO, "Need sGui"); + sGui->registerMainApplicationWidget(this); ui->setupUi(this); this->setDynamicProperties(windowMode == CEnableForFramelessWindow::WindowFrameless); this->init(); diff --git a/src/swiftlauncher/swiftlauncher.cpp b/src/swiftlauncher/swiftlauncher.cpp index cc1eb0f05..62c8bcb4d 100644 --- a/src/swiftlauncher/swiftlauncher.cpp +++ b/src/swiftlauncher/swiftlauncher.cpp @@ -49,6 +49,8 @@ CSwiftLauncher::CSwiftLauncher(QWidget *parent) : CIdentifiable(this), ui(new Ui::CSwiftLauncher) { + Q_ASSERT_X(sGui, Q_FUNC_INFO, "Need sGui"); + sGui->registerMainApplicationWidget(this); ui->setupUi(this); this->init(); connect(ui->tb_SwiftCore, &QPushButton::pressed, this, &CSwiftLauncher::startButtonPressed);