SetupPage.qml 2.52 KB
Newer Older
Don Gagne's avatar
Don Gagne committed
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
Don Gagne's avatar
Don Gagne committed
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
import QtQuick.Dialogs  1.2

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

/// Base view control for all Setup pages
QGCView {
    id:         setupView
    viewPanel:  setupPanel

27
    property alias  pageComponent:      pageLoader.sourceComponent
28 29
    property string pageName:           vehicleComponent ? vehicleComponent.name : ""
    property string pageDescription:    vehicleComponent ? vehicleComponent.description : ""
30 31
    property real   availableWidth:     width - pageLoader.x
    property real   availableHeight:    height - pageLoader.y
Don Gagne's avatar
Don Gagne committed
32 33 34 35 36 37 38 39 40 41 42

    property real _margins: ScreenTools.defaultFontPixelHeight / 2

    QGCPalette { id: qgcPal; colorGroupEnabled: setupPanel.enabled }

    QGCViewPanel {
        id:             setupPanel
        anchors.fill:   parent

        QGCFlickable {
            anchors.fill:   parent
43 44
            contentWidth:   pageLoader.x + pageLoader.item.width
            contentHeight:  pageLoader.y + pageLoader.item.height
Don Gagne's avatar
Don Gagne committed
45 46 47 48
            clip:           true

            Column {
                id:             headingColumn
49
                width:          setupPanel.width
Don Gagne's avatar
Don Gagne committed
50 51 52 53
                spacing:        _margins

                QGCLabel {
                    font.pointSize: ScreenTools.largeFontPointSize
54
                    text:           pageName + " " + qsTr("Setup")
Don Gagne's avatar
Don Gagne committed
55 56 57 58 59 60 61
                    visible:        !ScreenTools.isShortScreen
                }

                QGCLabel {
                    anchors.left:   parent.left
                    anchors.right:  parent.right
                    wrapMode:       Text.WordWrap
62
                    text:           pageDescription
Don Gagne's avatar
Don Gagne committed
63 64 65 66 67
                    visible:        !ScreenTools.isShortScreen
                }
            }

            Loader {
68
                id:                 pageLoader
Don Gagne's avatar
Don Gagne committed
69 70
                anchors.topMargin:  _margins
                anchors.top:        headingColumn.bottom
71

Don Gagne's avatar
Don Gagne committed
72 73 74 75
            }
        }
    }
}