diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-08-14 15:45:31 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-08-14 13:59:52 +0000 |
commit | 781aae2f348190796475bc28003813a9591678ed (patch) | |
tree | 58c1063d32525ffd566876a9483f66d1b9f94cc2 | |
parent | ba2f7169656f2b3f6b04f8965b43811ff3cb4bd8 (diff) |
Platform dialogs: apply the options
Change-Id: I6bccfebcbb32dcafeea0814d88f7882857a62a85
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
12 files changed, 24 insertions, 13 deletions
diff --git a/src/imports/platform/qquickplatformcolordialog.cpp b/src/imports/platform/qquickplatformcolordialog.cpp index d7fbbfff..ccd7d518 100644 --- a/src/imports/platform/qquickplatformcolordialog.cpp +++ b/src/imports/platform/qquickplatformcolordialog.cpp @@ -202,9 +202,11 @@ QPlatformDialogHelper *QQuickPlatformColorDialog::createHelper() return dialog; } -void QQuickPlatformColorDialog::applyOptions() +void QQuickPlatformColorDialog::applyOptions(QPlatformDialogHelper *handle) { m_options->setWindowTitle(title()); + if (QPlatformColorDialogHelper *colorDialog = qobject_cast<QPlatformColorDialogHelper *>(handle)) + colorDialog->setOptions(m_options); } void QQuickPlatformColorDialog::accept() diff --git a/src/imports/platform/qquickplatformcolordialog_p.h b/src/imports/platform/qquickplatformcolordialog_p.h index ffc31116..d9f8d0ab 100644 --- a/src/imports/platform/qquickplatformcolordialog_p.h +++ b/src/imports/platform/qquickplatformcolordialog_p.h @@ -81,7 +81,7 @@ Q_SIGNALS: protected: QPlatformDialogHelper *createHelper() override; - void applyOptions() override; + void applyOptions(QPlatformDialogHelper *handle) override; void accept() override; private: diff --git a/src/imports/platform/qquickplatformdialog.cpp b/src/imports/platform/qquickplatformdialog.cpp index dfb027f5..924db815 100644 --- a/src/imports/platform/qquickplatformdialog.cpp +++ b/src/imports/platform/qquickplatformdialog.cpp @@ -231,7 +231,7 @@ void QQuickPlatformDialog::open() if (m_visible || !create()) return; - applyOptions(); + applyOptions(m_handle); m_visible = m_handle->show(m_flags, m_modality, m_parentWindow); if (m_visible) emit visibleChanged(); @@ -309,8 +309,9 @@ void QQuickPlatformDialog::destroy() m_handle = nullptr; } -void QQuickPlatformDialog::applyOptions() +void QQuickPlatformDialog::applyOptions(QPlatformDialogHelper *handle) { + Q_UNUSED(handle); } QWindow *QQuickPlatformDialog::findParentWindow() const diff --git a/src/imports/platform/qquickplatformdialog_p.h b/src/imports/platform/qquickplatformdialog_p.h index fb8d4fb6..23956270 100644 --- a/src/imports/platform/qquickplatformdialog_p.h +++ b/src/imports/platform/qquickplatformdialog_p.h @@ -117,7 +117,7 @@ protected: void destroy(); virtual QPlatformDialogHelper *createHelper() = 0; - virtual void applyOptions(); + virtual void applyOptions(QPlatformDialogHelper *handle); QWindow *findParentWindow() const; diff --git a/src/imports/platform/qquickplatformfiledialog.cpp b/src/imports/platform/qquickplatformfiledialog.cpp index 1cf25d73..e3ab8b01 100644 --- a/src/imports/platform/qquickplatformfiledialog.cpp +++ b/src/imports/platform/qquickplatformfiledialog.cpp @@ -478,9 +478,11 @@ QPlatformDialogHelper *QQuickPlatformFileDialog::createHelper() return dialog; } -void QQuickPlatformFileDialog::applyOptions() +void QQuickPlatformFileDialog::applyOptions(QPlatformDialogHelper *handle) { m_options->setWindowTitle(title()); + if (QPlatformFileDialogHelper *fileDialog = qobject_cast<QPlatformFileDialogHelper *>(handle)) + fileDialog->setOptions(m_options); } void QQuickPlatformFileDialog::accept() diff --git a/src/imports/platform/qquickplatformfiledialog_p.h b/src/imports/platform/qquickplatformfiledialog_p.h index 5d28c81d..43d17ec6 100644 --- a/src/imports/platform/qquickplatformfiledialog_p.h +++ b/src/imports/platform/qquickplatformfiledialog_p.h @@ -138,7 +138,7 @@ Q_SIGNALS: protected: QPlatformDialogHelper *createHelper() override; - void applyOptions() override; + void applyOptions(QPlatformDialogHelper *handle) override; void accept() override; private: diff --git a/src/imports/platform/qquickplatformfolderdialog.cpp b/src/imports/platform/qquickplatformfolderdialog.cpp index 81a60190..dacd68aa 100644 --- a/src/imports/platform/qquickplatformfolderdialog.cpp +++ b/src/imports/platform/qquickplatformfolderdialog.cpp @@ -277,9 +277,11 @@ QPlatformDialogHelper *QQuickPlatformFolderDialog::createHelper() return dialog; } -void QQuickPlatformFolderDialog::applyOptions() +void QQuickPlatformFolderDialog::applyOptions(QPlatformDialogHelper *handle) { m_options->setWindowTitle(title()); + if (QPlatformFileDialogHelper *fileDialog = qobject_cast<QPlatformFileDialogHelper *>(handle)) + fileDialog->setOptions(m_options); } void QQuickPlatformFolderDialog::accept() diff --git a/src/imports/platform/qquickplatformfolderdialog_p.h b/src/imports/platform/qquickplatformfolderdialog_p.h index 2c0fdf51..ebc44c0c 100644 --- a/src/imports/platform/qquickplatformfolderdialog_p.h +++ b/src/imports/platform/qquickplatformfolderdialog_p.h @@ -94,7 +94,7 @@ Q_SIGNALS: protected: QPlatformDialogHelper *createHelper() override; - void applyOptions() override; + void applyOptions(QPlatformDialogHelper *handle) override; void accept() override; private: diff --git a/src/imports/platform/qquickplatformfontdialog.cpp b/src/imports/platform/qquickplatformfontdialog.cpp index 3ca4304d..892869a7 100644 --- a/src/imports/platform/qquickplatformfontdialog.cpp +++ b/src/imports/platform/qquickplatformfontdialog.cpp @@ -205,9 +205,11 @@ QPlatformDialogHelper *QQuickPlatformFontDialog::createHelper() return dialog; } -void QQuickPlatformFontDialog::applyOptions() +void QQuickPlatformFontDialog::applyOptions(QPlatformDialogHelper *handle) { m_options->setWindowTitle(title()); + if (QPlatformFontDialogHelper *fontDialog = qobject_cast<QPlatformFontDialogHelper *>(handle)) + fontDialog->setOptions(m_options); } void QQuickPlatformFontDialog::accept() diff --git a/src/imports/platform/qquickplatformfontdialog_p.h b/src/imports/platform/qquickplatformfontdialog_p.h index 583bf42a..48362e1a 100644 --- a/src/imports/platform/qquickplatformfontdialog_p.h +++ b/src/imports/platform/qquickplatformfontdialog_p.h @@ -81,7 +81,7 @@ Q_SIGNALS: protected: QPlatformDialogHelper *createHelper() override; - void applyOptions() override; + void applyOptions(QPlatformDialogHelper *handle) override; void accept() override; private: diff --git a/src/imports/platform/qquickplatformmessagedialog.cpp b/src/imports/platform/qquickplatformmessagedialog.cpp index 2fe4f88f..68ef3553 100644 --- a/src/imports/platform/qquickplatformmessagedialog.cpp +++ b/src/imports/platform/qquickplatformmessagedialog.cpp @@ -375,9 +375,11 @@ QPlatformDialogHelper *QQuickPlatformMessageDialog::createHelper() return dialog; } -void QQuickPlatformMessageDialog::applyOptions() +void QQuickPlatformMessageDialog::applyOptions(QPlatformDialogHelper *handle) { m_options->setWindowTitle(title()); + if (QPlatformMessageDialogHelper *messageDialog = qobject_cast<QPlatformMessageDialogHelper *>(handle)) + messageDialog->setOptions(m_options); } void QQuickPlatformMessageDialog::handleClick(QPlatformDialogHelper::StandardButton button) diff --git a/src/imports/platform/qquickplatformmessagedialog_p.h b/src/imports/platform/qquickplatformmessagedialog_p.h index e5548174..87ead6f8 100644 --- a/src/imports/platform/qquickplatformmessagedialog_p.h +++ b/src/imports/platform/qquickplatformmessagedialog_p.h @@ -109,7 +109,7 @@ Q_SIGNALS: protected: QPlatformDialogHelper *createHelper() override; - void applyOptions() override; + void applyOptions(QPlatformDialogHelper *handle) override; private Q_SLOTS: void handleClick(QPlatformDialogHelper::StandardButton button); |