FlightModesComponentSummary.qml 2.62 KB
Newer Older
Don Gagne's avatar
Don Gagne committed
1
import QtQuick          2.2
2
import QtQuick.Controls 1.2
3

Don Gagne's avatar
Don Gagne committed
4 5 6 7 8
import QGroundControl.FactSystem    1.0
import QGroundControl.FactControls  1.0
import QGroundControl.Controls      1.0
import QGroundControl.Palette       1.0
import QGroundControl.ScreenTools   1.0
9

10
FactPanel {
11 12 13
    id:             panel
    anchors.fill:   parent
    color:          qgcPal.windowShadeDark
14

Don Gagne's avatar
Don Gagne committed
15 16 17
    QGCPalette { id: qgcPal; colorGroupEnabled: enabled }
    FactPanelController { id: controller; factPanel: panel }

Don Gagne's avatar
Don Gagne committed
18 19 20 21
    property Fact _nullFact
    property Fact _rcMapFltmode:    controller.parameterExists(-1, "RC_MAP_FLTMODE") ? controller.getParameterFact(-1, "RC_MAP_FLTMODE") : _nullFact
    property Fact _rcMapModeSw:     controller.getParameterFact(-1, "RC_MAP_MODE_SW")
    property bool _simpleMode:      _rcMapFltmode.value > 0 || _rcMapModeSw.value == 0
22

Don Gagne's avatar
Don Gagne committed
23
    Loader {
24
        anchors.fill:       parent
25
        anchors.margins:    8
Don Gagne's avatar
Don Gagne committed
26 27
        sourceComponent:    _simpleMode ? simple : advanced
    }
28

Don Gagne's avatar
Don Gagne committed
29 30 31 32
    Component {
        id: simple
        Column {
            VehicleSummaryRow {
33 34
                labelText: qsTr("Mode switch:")
                valueText: _rcMapFltmode.value === 0 ? qsTr("Setup required") : _rcMapFltmode.enumStringValue
Don Gagne's avatar
Don Gagne committed
35 36 37 38
            }
            Repeater {
                model: 6
                VehicleSummaryRow {
39
                    labelText: qsTr("Flight Mode %1 :").arg(index + 1)
Don Gagne's avatar
Don Gagne committed
40 41 42
                    valueText: controller.getParameterFact(-1, "COM_FLTMODE" + (index + 1)).enumStringValue
                }
            }
43
        }
Don Gagne's avatar
Don Gagne committed
44 45 46 47 48 49 50 51 52
    }

    Component {
        id: advanced
        Column {
            property Fact posCtlSwFact: controller.getParameterFact(-1, "RC_MAP_POSCTL_SW")
            property Fact loiterSwFact: controller.getParameterFact(-1, "RC_MAP_LOITER_SW")
            property Fact returnSwFact: controller.getParameterFact(-1, "RC_MAP_RETURN_SW")
            VehicleSummaryRow {
53 54
                labelText: qsTr("Mode switch:")
                valueText: _rcMapModeSw.value === 0 ? qsTr("Setup required") : _rcMapModeSw.valueString
Don Gagne's avatar
Don Gagne committed
55 56
            }
            VehicleSummaryRow {
57 58
                labelText: qsTr("Position Ctl switch:")
                valueText: posCtlSwFact.value === 0 ? qsTr("Disabled") : posCtlSwFact.valueString
Don Gagne's avatar
Don Gagne committed
59 60
            }
            VehicleSummaryRow {
61 62
                labelText: qsTr("Loiter switch:")
                valueText: loiterSwFact.value === 0 ? qsTr("Disabled") : loiterSwFact.valueString
Don Gagne's avatar
Don Gagne committed
63 64
            }
            VehicleSummaryRow {
65 66
                labelText: qsTr("Return switch:")
                valueText: returnSwFact.value === 0 ? qsTr("Disabled") : returnSwFact.valueString
Don Gagne's avatar
Don Gagne committed
67
            }
68
        }
69 70
    }
}