PX4FlightModes.qml 1.99 KB
Newer Older
1 2 3 4 5 6 7 8
/****************************************************************************
 *
 *   (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.
 *
 ****************************************************************************/
Don Gagne's avatar
Don Gagne committed
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25


import QtQuick                  2.2
import QtQuick.Controls         1.2
import QtQuick.Controls.Styles  1.2
import QtQuick.Dialogs          1.2
import QtQuick.Layouts          1.1

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

/// PX4 Flight Mode configuration. This control will load either the Simple or Advanced Flight Mode config
/// based on current parameter settings.
26 27 28
SetupPage {
    id:             flightModesPage
    pageComponent:  pageComponent
Don Gagne's avatar
Don Gagne committed
29

30 31
    Component {
        id: pageComponent
Don Gagne's avatar
Don Gagne committed
32 33

        Loader {
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
            width:  availableWidth
            height: availableHeight
            source: _simpleMode ? "qrc:/qml/PX4SimpleFlightModes.qml" : "qrc:/qml/PX4AdvancedFlightModes.qml"

            property Fact _nullFact
            property bool _rcMapFltmodeExists:  controller.parameterExists(-1, "RC_MAP_FLTMODE")
            property Fact _rcMapFltmode:        _rcMapFltmodeExists ? controller.getParameterFact(-1, "RC_MAP_FLTMODE") : _nullFact
            property Fact _rcMapModeSw:         controller.getParameterFact(-1, "RC_MAP_MODE_SW")
            property bool _simpleMode:          _rcMapFltmodeExists ? _rcMapFltmode.value > 0 || _rcMapModeSw.value == 0 : false

            FactPanelController {
                id:         controller
                factPanel:  flightModesPage.viewPanel
            }

            property var qgcView:       flightModesPage
            property var qgcViewPanel:  flightModesPage.viewPanel
Don Gagne's avatar
Don Gagne committed
51
        }
52 53
    }
}