aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/dialogs/DefaultFileDialog.qml
diff options
context:
space:
mode:
authorShawn Rutledge <shawn.rutledge@digia.com>2013-06-27 13:08:08 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-06-28 16:44:10 +0200
commit811337a73c160447e5218ae55e93df99ac3d9edd (patch)
treeac196f54046d031684f9ef220574656e16889ee3 /src/imports/dialogs/DefaultFileDialog.qml
parent87a4a3d095f4fbabb91dade7e7313cb844256b9b (diff)
FileDialog.folder property should also be a QUrl, for consistencyv5.1.0-rc2v5.1.0
In QtQuick we never use plain file paths, because URL is more general. Also use const references for string and URL setters, and fixed the dependency between the FolderListModel's folder, the field for editing it, and the folder property of the AbstractFileDialog. Change-Id: I6e965b80b73d4eb2473712a4f4d4f816b768d802 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Diffstat (limited to 'src/imports/dialogs/DefaultFileDialog.qml')
-rw-r--r--src/imports/dialogs/DefaultFileDialog.qml17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/imports/dialogs/DefaultFileDialog.qml b/src/imports/dialogs/DefaultFileDialog.qml
index a43b493a29..2cdb34cc03 100644
--- a/src/imports/dialogs/DefaultFileDialog.qml
+++ b/src/imports/dialogs/DefaultFileDialog.qml
@@ -53,13 +53,13 @@ AbstractFileDialog {
currentPathField.visible = false
}
}
+ onFolderChanged: view.model.folder = folder
property bool showFocusHighlight: false
property real textX: titleBar.height
property SystemPalette palette
property var selectedIndices: []
property int lastClickedIdx: -1
- folder: urlToPath(view.model.folder)
function dirDown(path) {
view.model.folder = path
@@ -107,10 +107,11 @@ AbstractFileDialog {
selectedIndices.map(function(idx) {
if (view.model.isFolder(idx)) {
if (selectFolder)
- addSelection(view.model.get(idx, "filePath"))
+ // TODO after QTBUG-32039: should not need to convert pathToUrl here
+ addSelection(pathToUrl(view.model.get(idx, "filePath")))
} else {
if (!selectFolder)
- addSelection(view.model.get(idx, "filePath"))
+ addSelection(pathToUrl(view.model.get(idx, "filePath")))
}
})
}
@@ -211,7 +212,12 @@ AbstractFileDialog {
clip: true
x: 0
width: parent.width
- model: FolderListModel { }
+ model: FolderListModel {
+ onFolderChanged: {
+ root.folder = folder
+ currentPathField.text = root.urlToPath(view.model.folder)
+ }
+ }
delegate: folderDelegate
highlight: Rectangle {
color: "transparent"
@@ -305,10 +311,9 @@ AbstractFileDialog {
anchors.leftMargin: textX; anchors.rightMargin: 4
visible: false
focus: visible
- text: root.urlToPath(view.model.folder)
onAccepted: {
root.clearSelection()
- if (root.addSelection(text))
+ if (root.addSelection(root.pathToUrl(text)))
root.accept()
else
view.model.folder = root.pathFolder(text)