From 03efde5b3c169ed17f028e436016b719496f855e Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Tue, 15 Mar 2016 13:53:13 -0700 Subject: [PATCH] Change text in case of drag and drop. --- interface/resources/qml/AssetServer.qml | 8 ++++---- interface/src/Application.cpp | 10 ++++++---- .../src/scripting/AssetMappingsScriptingInterface.cpp | 11 ++++++++--- .../src/scripting/AssetMappingsScriptingInterface.h | 2 +- 4 files changed, 19 insertions(+), 12 deletions(-) diff --git a/interface/resources/qml/AssetServer.qml b/interface/resources/qml/AssetServer.qml index 3e8942c206..37291480b2 100644 --- a/interface/resources/qml/AssetServer.qml +++ b/interface/resources/qml/AssetServer.qml @@ -252,7 +252,7 @@ Window { } uploadOpen = true; - function doUpload(url) { + function doUpload(url, dropping) { var fileUrl = fileDialogHelper.urlToPath(url); var path = assetProxyModel.data(treeView.selection.currentIndex, 0x100); @@ -290,11 +290,11 @@ Window { uploadButton.enabled = true; uploadOpen = false; } - }); + }, dropping); } if (fileUrl) { - doUpload(fileUrl); + doUpload(fileUrl, true); } else { var browser = desktop.fileDialog({ selectDirectory: false, @@ -305,7 +305,7 @@ Window { }); browser.selectedFile.connect(function(url) { currentDirectory = browser.dir; - doUpload(url); + doUpload(url, false); }); } } diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 3e9c4f5a5a..fda5a0e72d 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -4460,11 +4460,13 @@ void Application::toggleAssetServerWidget(QString filePath) { } static const QUrl url("AssetServer.qml"); - auto urlSetter = [=](QQmlContext* context, QObject* newObject){ - emit uploadRequest(filePath); + auto startUpload = [=](QQmlContext* context, QObject* newObject){ + if (!filePath.isEmpty()) { + emit uploadRequest(filePath); + } }; - DependencyManager::get()->show(url, "AssetServer", urlSetter); - emit uploadRequest(filePath); + DependencyManager::get()->show(url, "AssetServer", startUpload); + startUpload(nullptr, nullptr); } void Application::packageModel() { diff --git a/interface/src/scripting/AssetMappingsScriptingInterface.cpp b/interface/src/scripting/AssetMappingsScriptingInterface.cpp index b721d3c286..3c95eb007a 100644 --- a/interface/src/scripting/AssetMappingsScriptingInterface.cpp +++ b/interface/src/scripting/AssetMappingsScriptingInterface.cpp @@ -59,13 +59,18 @@ void AssetMappingsScriptingInterface::getMapping(QString path, QJSValue callback request->start(); } -void AssetMappingsScriptingInterface::uploadFile(QString path, QString mapping, QJSValue startedCallback, QJSValue completedCallback) { +void AssetMappingsScriptingInterface::uploadFile(QString path, QString mapping, QJSValue startedCallback, QJSValue completedCallback, bool dropEvent) { static const QString helpText = - "Upload your asset to a specific folder by entering the full path. Specifying " + "Upload your asset to a specific folder by entering the full path. Specifying\n" "a new folder name will automatically create that folder for you."; + static const QString dropHelpText = + "This file will be added to your Asset Server.\n" + "Use the field below to place your file in a specific folder or to rename it.\n" + "Specifying a new folder name will automatically create that folder for you."; auto offscreenUi = DependencyManager::get(); - auto result = offscreenUi->inputDialog(OffscreenUi::ICON_INFORMATION, "Specify Asset Path", helpText, mapping); + auto result = offscreenUi->inputDialog(OffscreenUi::ICON_INFORMATION, "Specify Asset Path", + dropEvent ? dropHelpText : helpText, mapping); if (!result.isValid()) { completedCallback.call({ -1 }); diff --git a/interface/src/scripting/AssetMappingsScriptingInterface.h b/interface/src/scripting/AssetMappingsScriptingInterface.h index 5b5170f7bb..831b30513a 100644 --- a/interface/src/scripting/AssetMappingsScriptingInterface.h +++ b/interface/src/scripting/AssetMappingsScriptingInterface.h @@ -54,7 +54,7 @@ public: Q_INVOKABLE void setMapping(QString path, QString hash, QJSValue callback = QJSValue()); Q_INVOKABLE void getMapping(QString path, QJSValue callback = QJSValue()); - Q_INVOKABLE void uploadFile(QString path, QString mapping, QJSValue startedCallback = QJSValue(), QJSValue completedCallback = QJSValue()); + Q_INVOKABLE void uploadFile(QString path, QString mapping, QJSValue startedCallback = QJSValue(), QJSValue completedCallback = QJSValue(), bool dropEvent = false); Q_INVOKABLE void deleteMappings(QStringList paths, QJSValue callback); Q_INVOKABLE void deleteMapping(QString path, QJSValue callback) { deleteMappings(QStringList(path), callback = QJSValue()); } Q_INVOKABLE void getAllMappings(QJSValue callback = QJSValue());