diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-08-13 22:39:49 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-08-14 09:26:19 +0000 |
commit | 8dd5c0fd0eb3b25a700dd506af77e049e631d79d (patch) | |
tree | 490483159f5a950eb723420e83fdf6183a0035af /src/imports/platform/qquickplatformfiledialog.cpp | |
parent | 51192e8ef5d9ab385de390b38409b73a56f55f84 (diff) |
FileDialog: add missing folder-property
Change-Id: I60d60072f1cc6a876228e647b1d6db943e303ea2
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src/imports/platform/qquickplatformfiledialog.cpp')
-rw-r--r-- | src/imports/platform/qquickplatformfiledialog.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/imports/platform/qquickplatformfiledialog.cpp b/src/imports/platform/qquickplatformfiledialog.cpp index 0a617a8c..99667262 100644 --- a/src/imports/platform/qquickplatformfiledialog.cpp +++ b/src/imports/platform/qquickplatformfiledialog.cpp @@ -255,6 +255,28 @@ void QQuickPlatformFileDialog::setCurrentFiles(const QList<QUrl> &files) } /*! + \qmlproperty url Qt.labs.platform::FileDialog::folder + + This property holds the folder where files are selected. + For selecting a folder, use FolderDialog instead. + + \sa FolderDialog +*/ +QUrl QQuickPlatformFileDialog::folder() const +{ + if (QPlatformFileDialogHelper *fileDialog = qobject_cast<QPlatformFileDialogHelper *>(handle())) + return fileDialog->directory(); + return QUrl(); +} + +void QQuickPlatformFileDialog::setFolder(const QUrl &folder) +{ + if (QPlatformFileDialogHelper *fileDialog = qobject_cast<QPlatformFileDialogHelper *>(handle())) + fileDialog->setDirectory(folder); + m_options->setInitialDirectory(folder); +} + +/*! \qmlproperty flags Qt.labs.platform::FileDialog::options This property holds the various options that affect the look and feel of the dialog. @@ -426,6 +448,7 @@ QPlatformDialogHelper *QQuickPlatformFileDialog::createHelper() // TODO: emit currentFileChanged only when the first entry in currentFiles changes connect(fileDialog, &QPlatformFileDialogHelper::currentChanged, this, &QQuickPlatformFileDialog::currentFileChanged); connect(fileDialog, &QPlatformFileDialogHelper::currentChanged, this, &QQuickPlatformFileDialog::currentFilesChanged); + connect(fileDialog, &QPlatformFileDialogHelper::directoryEntered, this, &QQuickPlatformFileDialog::folderChanged); fileDialog->setOptions(m_options); } return dialog; |