Commit 0be3b970 authored by Don Gagne's avatar Don Gagne Committed by GitHub

Merge pull request #5016 from DonLakeFlyer/MobileSave

Mobile file save: Show existing files to save to
parents 44682709 58cc2a47
import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.2
import QGroundControl 1.0
import QGroundControl.ScreenTools 1.0
......@@ -21,12 +22,14 @@ Item {
property bool selectExisting
property bool selectFolder
property bool _openForLoad
property bool _openForLoad: true
property real _margins: ScreenTools.defaultFontPixelHeight / 2
property bool _mobile: ScreenTools.isMobile
function openForLoad() {
_openForLoad = true
if (ScreenTools.isMobile && folder.length !== 0) {
if (_mobile && folder.length !== 0) {
qgcView.showDialog(mobileFileOpenDialog, title, qgcView.showDialogDefaultWidth, StandardButton.Cancel)
} else {
fullFileDialog.open()
......@@ -35,7 +38,7 @@ Item {
function openForSave() {
_openForLoad = false
if (ScreenTools.isMobile && folder.length !== 0) {
if (_mobile && folder.length !== 0) {
qgcView.showDialog(mobileFileSaveDialog, title, qgcView.showDialogDefaultWidth, StandardButton.Cancel | StandardButton.Ok)
} else {
fullFileDialog.open()
......@@ -76,18 +79,23 @@ Item {
id: mobileFileOpenDialog
QGCViewDialog {
Item {
anchors.margins: _margins
QGCFlickable {
anchors.fill: parent
contentHeight: fileOpenColumn.height
QGCListView {
id: listView
anchors.fill: parent
spacing: _margins / 2
orientation: ListView.Vertical
Column {
id: fileOpenColumn
anchors.left: parent.left
anchors.right: parent.right
spacing: ScreenTools.defaultFontPixelHeight / 2
Repeater {
id: fileList;
model: controller.getFiles(folder, fileExtension)
delegate: QGCButton {
QGCButton {
anchors.left: parent.left
anchors.right: parent.right
text: modelData
onClicked: {
......@@ -99,7 +107,8 @@ Item {
QGCLabel {
text: qsTr("No files")
visible: listView.model.length == 0
visible: fileList.model.length == 0
}
}
}
}
......@@ -123,19 +132,29 @@ Item {
hideDialog()
}
QGCFlickable {
anchors.fill: parent
contentHeight: fileSaveColumn.height
Column {
id: fileSaveColumn
anchors.left: parent.left
anchors.right: parent.right
spacing: ScreenTools.defaultFontPixelHeight
spacing: ScreenTools.defaultFontPixelHeight / 2
QGCLabel {
text: qsTr("File name:")
}
RowLayout {
anchors.left: parent.left
anchors.right: parent.right
spacing: ScreenTools.defaultFontPixelWidth
QGCLabel { text: qsTr("New file name:") }
QGCTextField {
id: filenameTextField
Layout.fillWidth: true
onTextChanged: replaceMessage.visible = false
}
}
QGCLabel {
anchors.left: parent.left
......@@ -153,6 +172,30 @@ Item {
visible: false
color: qgcPal.warningText
}
SectionHeader {
anchors.left: parent.left
anchors.right: parent.right
text: qsTr("Save to existing file:")
}
Repeater {
model: controller.getFiles(folder, fileExtension)
QGCButton {
anchors.left: parent.left
anchors.right: parent.right
text: modelData
onClicked: {
hideDialog()
_root.acceptedForSave(controller.fullyQualifiedFilename(folder, modelData, fileExtension))
}
}
}
}
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment