From 48c4bddc1bf46511127c084d52f0bb1f08ade75a Mon Sep 17 00:00:00 2001 From: Eberhard Graether Date: Tue, 29 Oct 2019 14:42:27 +0100 Subject: [PATCH] src: Fixed macOS build --- src/lib_gui/qt/view/QtDialogView.cpp | 35 ++++++++++++++++++++++++ src/lib_gui/qt/view/QtDialogView.h | 34 +---------------------- src/lib_gui/qt/window/QtIndexingDialog.h | 4 +-- 3 files changed, 38 insertions(+), 35 deletions(-) diff --git a/src/lib_gui/qt/view/QtDialogView.cpp b/src/lib_gui/qt/view/QtDialogView.cpp index 373fa78e..30cf7232 100644 --- a/src/lib_gui/qt/view/QtDialogView.cpp +++ b/src/lib_gui/qt/view/QtDialogView.cpp @@ -504,3 +504,38 @@ void QtDialogView::updateErrorCount(size_t errorCount, size_t fatalCount) reportWindow->updateErrorCount(errorCount, fatalCount); } } + +template +DialogType* QtDialogView::createWindow(ParamTypes... params) +{ + DialogType* window = nullptr; + if (m_parentWindow) + { + window = new DialogType(params..., m_parentWindow); + } + else + { + window = new DialogType(params..., m_mainWindow); + } + + connect(window, &QtIndexingDialog::canceled, &m_windowStack, &QtWindowStack::popWindow); + connect(window, &QtIndexingDialog::finished, &m_windowStack, &QtWindowStack::clearWindows); + connect(window, &QtIndexingDialog::visibleChanged, this, &QtDialogView::dialogVisibilityChanged); + + if (m_mainWindow) + { + connect( + m_mainWindow, &QtMainWindow::hideIndexingDialog, + std::bind(&QtDialogView::dialogVisibilityChanged, this, true) + ); + } + + m_windowStack.pushWindow(window); + + if (!m_dialogsVisible) + { + window->hide(); + } + + return window; +} diff --git a/src/lib_gui/qt/view/QtDialogView.h b/src/lib_gui/qt/view/QtDialogView.h index 1641ce68..34a8643f 100644 --- a/src/lib_gui/qt/view/QtDialogView.h +++ b/src/lib_gui/qt/view/QtDialogView.h @@ -66,39 +66,7 @@ private: void updateErrorCount(size_t errorCount, size_t fatalCount); template - DialogType* createWindow(ParamTypes... params) - { - DialogType* window = nullptr; - if (m_parentWindow) - { - window = new DialogType(params..., m_parentWindow); - } - else - { - window = new DialogType(params..., m_mainWindow); - } - - connect(window, &QtIndexingDialog::canceled, &m_windowStack, &QtWindowStack::popWindow); - connect(window, &QtIndexingDialog::finished, &m_windowStack, &QtWindowStack::clearWindows); - connect(window, &QtIndexingDialog::visibleChanged, this, &QtDialogView::dialogVisibilityChanged); - - if (m_mainWindow) - { - connect( - m_mainWindow, &QtMainWindow::hideIndexingDialog, - std::bind(&QtDialogView::dialogVisibilityChanged, this, true) - ); - } - - m_windowStack.pushWindow(window); - - if (!m_dialogsVisible) - { - window->hide(); - } - - return window; - } + DialogType* createWindow(ParamTypes... params); QtMainWindow* m_mainWindow; QtWindow* m_parentWindow; diff --git a/src/lib_gui/qt/window/QtIndexingDialog.h b/src/lib_gui/qt/window/QtIndexingDialog.h index d01c38ea..9a987297 100644 --- a/src/lib_gui/qt/window/QtIndexingDialog.h +++ b/src/lib_gui/qt/window/QtIndexingDialog.h @@ -23,11 +23,11 @@ protected: static QLabel* createTitleLabel(QString title, QBoxLayout* layout); static QLabel* createMessageLabel(QBoxLayout* layout); static QWidget* createErrorWidget(QBoxLayout* layout); - static QLabel* QtIndexingDialog::createFlagLabel(QWidget* parent); + static QLabel* createFlagLabel(QWidget* parent); public: QtIndexingDialog(bool isSubWindow, QWidget* parent = nullptr); - virtual QSize sizeHint() const = 0; + QSize sizeHint() const override = 0; signals: void finished();