From 74fb1aab559b18493fdb466a8e104cb1b810420a Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Tue, 8 Mar 2016 13:15:04 -0800 Subject: [PATCH] Add file dialog --- interface/resources/qml/AssetServer.qml | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/interface/resources/qml/AssetServer.qml b/interface/resources/qml/AssetServer.qml index 9920003c90..bc41ba7e42 100644 --- a/interface/resources/qml/AssetServer.qml +++ b/interface/resources/qml/AssetServer.qml @@ -16,6 +16,7 @@ import Qt.labs.settings 1.0 import "styles-uit" import "controls-uit" as HifiControls import "windows-uit" +import "dialogs" Window { id: root @@ -38,6 +39,7 @@ Window { category: "Overlay.AssetServer" property alias x: root.x property alias y: root.y + property alias directory: "" } @@ -49,9 +51,8 @@ Window { print("goBack"); } - function uploadFile(fileUrl) { - var shouldAddToScene = addToScene.enabled; - print("uploadFile: " + shouldAddToScene); + function uploadFile(fileUrl, addToScene) { + print("uploadFile: " + fileUrl + " " + addToScene); } @@ -117,7 +118,7 @@ Window { HifiControls.Tree { id: treeView - height: 155 + height: 250 treeModel: scriptsModel colorScheme: root.colorScheme anchors.left: parent.left @@ -129,6 +130,11 @@ Window { name: "" spacing: hifi.dimensions.contentSpacing.y + Component { + id: fileBrowserBuilder; + FileDialog { selectDirectory: true } + } + HifiControls.TextField { id: fileUrl anchors.left: parent.left @@ -156,6 +162,14 @@ Window { enabled: true width: 100 + + onClicked: { + var browser = fileBrowserBuilder.createObject(desktop, { selectDirectory: true, folder: fileDialogHelper.pathToUrl(preference.value) }); + browser.selectedFile.connect(function(url){ + console.log(url); + fileUrl.text = fileDialogHelper.urlToPath(url); + }); + } } } @@ -186,7 +200,7 @@ Window { width: 155 enabled: fileUrl.text != "" - onClicked: root.uploadFile(fileUrl.text) + onClicked: root.uploadFile(fileUrl.text, addToScene.checked) } } }