diff options
Diffstat (limited to 'src/dialogs')
-rw-r--r-- | src/dialogs/dialogs.pro | 8 | ||||
-rw-r--r-- | src/dialogs/plugin.cpp | 2 | ||||
-rw-r--r-- | src/dialogs/qquickabstractdialog.cpp | 4 | ||||
-rw-r--r-- | src/dialogs/qquickabstractfiledialog.cpp | 2 | ||||
-rw-r--r-- | src/dialogs/qquickplatformfiledialog.cpp | 7 | ||||
-rw-r--r-- | src/dialogs/qquickplatformfiledialog_p.h | 1 |
6 files changed, 17 insertions, 7 deletions
diff --git a/src/dialogs/dialogs.pro b/src/dialogs/dialogs.pro index f19283f2..e5cc7d79 100644 --- a/src/dialogs/dialogs.pro +++ b/src/dialogs/dialogs.pro @@ -7,7 +7,11 @@ IMPORT_VERSION = 1.2 QMAKE_DOCS = $$PWD/doc/qtquickdialogs.qdocconf -qtquickcompiler: DEFINES += ALWAYS_LOAD_FROM_RESOURCES +qtquickcompiler { + DEFINES += ALWAYS_LOAD_FROM_RESOURCES +} else { + !static: CONFIG += qmlcache +} SOURCES += \ qquickabstractmessagedialog.cpp \ @@ -80,7 +84,7 @@ ios|android|blackberry|winrt { QT += quick-private gui gui-private core core-private qml qml-private -!static { +!qmlcache { # Create the resource file GENERATED_RESOURCE_FILE = $$OUT_PWD/dialogs.qrc diff --git a/src/dialogs/plugin.cpp b/src/dialogs/plugin.cpp index 5a13bc9b..a2fb1099 100644 --- a/src/dialogs/plugin.cpp +++ b/src/dialogs/plugin.cpp @@ -66,8 +66,6 @@ static void initResources() { #ifdef QT_STATIC Q_INIT_RESOURCE(qmake_QtQuick_Dialogs); -#else - Q_INIT_RESOURCE(dialogs); #endif } diff --git a/src/dialogs/qquickabstractdialog.cpp b/src/dialogs/qquickabstractdialog.cpp index 65237652..ce87d56c 100644 --- a/src/dialogs/qquickabstractdialog.cpp +++ b/src/dialogs/qquickabstractdialog.cpp @@ -187,7 +187,7 @@ void QQuickAbstractDialog::setVisible(bool v) connect(m_contentItem, SIGNAL(implicitHeightChanged()), this, SLOT(implicitHeightChanged())); } if (!m_visibleChangedConnected) { - connect(m_dialogWindow, SIGNAL(visibleChanged(bool)), this, SLOT(visibleChanged(bool))); + connect(m_dialogWindow, &QQuickWindow::visibleChanged, this, &QQuickAbstractDialog::visibleChanged); m_visibleChangedConnected = true; } } @@ -328,7 +328,7 @@ void QQuickAbstractDialog::setContentItem(QQuickItem *obj) m_contentItem = obj; qCDebug(lcWindow) << obj; if (m_dialogWindow) { - disconnect(this, SLOT(visibleChanged(bool))); + disconnect(m_dialogWindow, &QQuickWindow::visibleChanged, this, &QQuickAbstractDialog::visibleChanged); // Can't necessarily delete because m_dialogWindow might have been provided by the QML. m_dialogWindow = 0; } diff --git a/src/dialogs/qquickabstractfiledialog.cpp b/src/dialogs/qquickabstractfiledialog.cpp index c0b3400c..49d98a1a 100644 --- a/src/dialogs/qquickabstractfiledialog.cpp +++ b/src/dialogs/qquickabstractfiledialog.cpp @@ -186,6 +186,7 @@ QStringList QQuickAbstractFileDialog::selectedNameFilterExtensions() const { QString filterRaw = selectedNameFilter(); QStringList ret; +#if QT_CONFIG(regularexpression) if (filterRaw.isEmpty()) { ret << "*"; return ret; @@ -194,6 +195,7 @@ QStringList QQuickAbstractFileDialog::selectedNameFilterExtensions() const QRegularExpressionMatchIterator i = re.globalMatch(filterRaw); while (i.hasNext()) ret << i.next().captured(1); +#endif // QT_CONFIG(regularexpression) if (ret.isEmpty()) ret << filterRaw; return ret; diff --git a/src/dialogs/qquickplatformfiledialog.cpp b/src/dialogs/qquickplatformfiledialog.cpp index 2d99ae1e..ab228d1f 100644 --- a/src/dialogs/qquickplatformfiledialog.cpp +++ b/src/dialogs/qquickplatformfiledialog.cpp @@ -213,7 +213,6 @@ QPlatformFileDialogHelper *QQuickPlatformFileDialog::helper() if (!m_dlgHelper) return m_dlgHelper; m_dlgHelper->setOptions(m_options); - connect(m_dlgHelper, SIGNAL(directoryEntered(QUrl)), this, SLOT(updateFolder(QUrl))); connect(m_dlgHelper, SIGNAL(filterSelected(QString)), this, SIGNAL(filterSelected())); connect(m_dlgHelper, SIGNAL(accept()), this, SLOT(accept())); connect(m_dlgHelper, SIGNAL(reject()), this, SLOT(reject())); @@ -222,6 +221,12 @@ QPlatformFileDialogHelper *QQuickPlatformFileDialog::helper() return m_dlgHelper; } +void QQuickPlatformFileDialog::accept() +{ + updateFolder(folder()); + QQuickFileDialog::accept(); +} + /*! \qmlproperty bool FileDialog::visible diff --git a/src/dialogs/qquickplatformfiledialog_p.h b/src/dialogs/qquickplatformfiledialog_p.h index 42e59332..419843f4 100644 --- a/src/dialogs/qquickplatformfiledialog_p.h +++ b/src/dialogs/qquickplatformfiledialog_p.h @@ -67,6 +67,7 @@ public: protected: QPlatformFileDialogHelper *helper() Q_DECL_OVERRIDE; + virtual void accept() override; Q_DISABLE_COPY(QQuickPlatformFileDialog) }; |