summaryrefslogtreecommitdiffstats
path: root/heimdall-frontend/source/qml/DropFiles.qml
diff options
context:
space:
mode:
authorBenjamin Dobell <benjamin.dobell+git@glassechidna.com.au>2015-03-09 16:49:32 +0100
committerBenjamin Dobell <benjamin.dobell+git@glassechidna.com.au>2015-03-09 16:53:28 +0100
commit6971b49f85d9ddeb2da968a594d65affec3d2b44 (patch)
tree620c821e72045b3b547982efb3d068d5354de9ce /heimdall-frontend/source/qml/DropFiles.qml
parentCompleted basic firmware file selection functionality (diff)
downloadHeimdall-6971b49f85d9ddeb2da968a594d65affec3d2b44.tar
Heimdall-6971b49f85d9ddeb2da968a594d65affec3d2b44.tar.gz
Heimdall-6971b49f85d9ddeb2da968a594d65affec3d2b44.tar.bz2
Heimdall-6971b49f85d9ddeb2da968a594d65affec3d2b44.tar.lz
Heimdall-6971b49f85d9ddeb2da968a594d65affec3d2b44.tar.xz
Heimdall-6971b49f85d9ddeb2da968a594d65affec3d2b44.tar.zst
Heimdall-6971b49f85d9ddeb2da968a594d65affec3d2b44.zip
Diffstat (limited to '')
-rw-r--r--heimdall-frontend/source/qml/DropFiles.qml27
1 files changed, 14 insertions, 13 deletions
diff --git a/heimdall-frontend/source/qml/DropFiles.qml b/heimdall-frontend/source/qml/DropFiles.qml
index ddcc90b..9187b4f 100644
--- a/heimdall-frontend/source/qml/DropFiles.qml
+++ b/heimdall-frontend/source/qml/DropFiles.qml
@@ -2,12 +2,11 @@ import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Layouts 1.1
import QtQuick.Dialogs 1.2
+import "FileUtils.js" as FileUtils
DropFilesForm {
id: background
-
property var fileUrls: []
-
signal nextPressed(var files)
ListModel {
@@ -30,15 +29,17 @@ DropFilesForm {
var count = urls.length;
if (count > 0) {
for (var i = 0; i < count; i++) {
- var url = urls[i].toString();
- var filename = url.slice(url.lastIndexOf('/') + 1, url.length);
+ if (FileUtils.isFile(urls[i])) {
+ var filename = FileUtils.filenameFromUrl(urls[i]);
- fileModel.append({
- icon: "drop_zone.svg",
- text: filename
- });
+ fileModel.append({ icon: "drop_zone.svg", text: filename });
- fileUrls.push(urls[i]);
+ if (FileUtils.isArchive(filename)) {
+ fileUrls.push(FileUtils.extractArchive(urls[i]));
+ } else {
+ fileUrls.push(urls[i]);
+ }
+ }
}
setFileGridVisible(true);
@@ -90,12 +91,12 @@ DropFilesForm {
}
FileDialog {
- id: browseDialog
+ id: browseDialog
title: "Select firmware file(s)"
selectMultiple: true
selectFolder: false
- onAccepted: {
+ onAccepted: {
addFiles(browseDialog.fileUrls);
- }
- }
+ }
+ }
}