diff --git a/src/blackgui/guiapplication.cpp b/src/blackgui/guiapplication.cpp index 8fb5038ac..143e21c32 100644 --- a/src/blackgui/guiapplication.cpp +++ b/src/blackgui/guiapplication.cpp @@ -160,14 +160,17 @@ namespace BlackGui return m; } - void CGuiApplication::initMainApplicationWindow(QWidget *mainWindow) const + void CGuiApplication::initMainApplicationWindow(QWidget *mainWindow) { if (!mainWindow) { return; } + if (this->m_uiSetupCompleted) { return; } + this->m_uiSetupCompleted = true; const QString name(this->getApplicationNameVersionBetaDev()); mainWindow->setObjectName(QCoreApplication::applicationName()); mainWindow->setWindowTitle(name); mainWindow->setWindowIcon(m_windowIcon); mainWindow->setWindowIconText(name); + emit this->uiObjectTreeReady(); } void CGuiApplication::setWindowIcon(const QPixmap &icon) diff --git a/src/blackgui/guiapplication.h b/src/blackgui/guiapplication.h index d2514031d..b7ff3e0bd 100644 --- a/src/blackgui/guiapplication.h +++ b/src/blackgui/guiapplication.h @@ -97,7 +97,7 @@ namespace BlackGui void processEventsToRefreshGui() const; //! Init the main application window based on information in this application - void initMainApplicationWindow(QWidget *mainWindow) const; + void initMainApplicationWindow(QWidget *mainWindow); //! \name print messages generated during parsing / cmd handling //! @{ @@ -156,6 +156,9 @@ namespace BlackGui //! Style sheet changed void styleSheetsChanged(); + //! Object tree ready (means ui->setupUi() completed) + void uiObjectTreeReady(); + protected slots: //! Startup competed virtual void ps_startupCompleted() override; @@ -178,7 +181,8 @@ namespace BlackGui QCommandLineOption m_cmdWindowStateMinimized { "empty" }; //!< window state (minimized) QCommandLineOption m_cmdWindowMode { "empty" }; //!< window mode (flags: frameless ...) CStyleSheetUtility m_styleSheetUtility{{}, this}; //!< style sheet utility - QScopedPointer m_splashScreen; //!< splash screen + QScopedPointer m_splashScreen; //!< splash screen + bool m_uiSetupCompleted = false; //!< ui setup completed //! Qt help message to formatted HTML static QString beautifyHelpMessage(const QString &helpText);