FlightModesComponentSummary.qml 2.59 KB
Newer Older
1 2
import QtQuick          2.3
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
    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")
21
    property bool _simpleMode:      _rcMapFltmode.value > 0 || _rcMapModeSw.value === 0
22

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

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

    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 {
52 53
                labelText: qsTr("Mode switch:")
                valueText: _rcMapModeSw.value === 0 ? qsTr("Setup required") : _rcMapModeSw.valueString
Don Gagne's avatar
Don Gagne committed
54 55
            }
            VehicleSummaryRow {
56 57
                labelText: qsTr("Position Ctl switch:")
                valueText: posCtlSwFact.value === 0 ? qsTr("Disabled") : posCtlSwFact.valueString
Don Gagne's avatar
Don Gagne committed
58 59
            }
            VehicleSummaryRow {
60 61
                labelText: qsTr("Loiter switch:")
                valueText: loiterSwFact.value === 0 ? qsTr("Disabled") : loiterSwFact.valueString
Don Gagne's avatar
Don Gagne committed
62 63
            }
            VehicleSummaryRow {
64 65
                labelText: qsTr("Return switch:")
                valueText: returnSwFact.value === 0 ? qsTr("Disabled") : returnSwFact.valueString
Don Gagne's avatar
Don Gagne committed
66
            }
67
        }
68 69
    }
}