QGCMobileFileOpenDialog.qml 1.67 KB
Newer Older
1 2 3 4 5 6 7 8 9
/****************************************************************************
 *
 *   (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
 *
 * QGroundControl is licensed according to the terms in the file
 * COPYING.md in the root of the source code directory.
 *
 ****************************************************************************/

10 11
import QtQuick          2.3
import QtQuick.Controls 1.2
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
import QtQuick.Dialogs  1.2

import QGroundControl               1.0
import QGroundControl.ScreenTools   1.0
import QGroundControl.Controls      1.0
import QGroundControl.Controllers   1.0
import QGroundControl.Palette       1.0

/// Simple file open dialog for mobile
QGCViewDialog {
    property string fileExtension   ///< File extension for file listing

    signal filenameReturned(string filename)

    readonly property real _margins: ScreenTools.defaultFontPixelHeight / 2

    QGCMobileFileDialogController { id: controller }
    QGCPalette { id: qgcPal; colorGroupEnabled: true }

    Item {
        anchors.margins:    _margins
        anchors.fill:       parent

        QGCListView {
            anchors.fill:   parent
            spacing:        _margins / 2
            orientation:    ListView.Vertical
            model:          controller.getFiles(fileExtension)

            delegate: QGCButton {
                text: modelData

                onClicked: {
                    hideDialog()
                    filenameReturned(controller.fullPath(modelData, fileExtension))
                }
            }
        }

        QGCLabel {
            text:       qsTr("No files")
            visible:    controller.getFiles(fileExtension).length == 0
        }
    }
}