MeasurementItemEditor.qml 3.17 KB
Newer Older
1
import QtQuick 2.3
2 3
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.4
4 5 6 7 8 9 10 11 12 13 14 15
import QtQuick.Dialogs 1.2
import QtQuick.Extras 1.4
import QtQuick.Layouts 1.3

import QGroundControl 1.0
import QGroundControl.ScreenTools 1.0
import QGroundControl.Vehicle 1.0
import QGroundControl.Controls 1.0
import QGroundControl.FactSystem 1.0
import QGroundControl.FactControls 1.0
import QGroundControl.Palette 1.0
import QGroundControl.FlightMap 1.0
16
import MeasurementComplexItem 1.0 as MCI
17 18

Rectangle {
19 20 21 22 23
    id: _root
    height: visible ? (mainColumn.height + (_margin * 2)) : 0
    width: availableWidth
    color: qgcPal.windowShadeDark
    radius: _radius
24 25 26 27

    // The following properties must be available up the hierarchy chain
    //property real   availableWidth    ///< Width for control
    //property var    missionItem       ///< Mission Item for editor
28 29 30
    property real _margin: ScreenTools.defaultFontPixelWidth / 2
    property real _fieldWidth: ScreenTools.defaultFontPixelWidth * 10.5
    property var _vehicle: QGroundControl.multiVehicleManager.activeVehicle ? QGroundControl.multiVehicleManager.activeVehicle : QGroundControl.multiVehicleManager.offlineEditingVehicle
31 32
    property var _missionItem: missionItem
    property var _areaData: missionItem.areaData
33

34 35 36 37 38 39 40 41 42 43 44 45
    QGCPalette {
        id: qgcPal
        colorGroupEnabled: true
    }

    Column {
        // main Column
        id: mainColumn
        anchors.margins: _margin
        anchors.top: parent.top
        anchors.left: parent.left
        anchors.right: parent.right
46
        spacing: _margin
47 48 49 50 51 52

        QGCTabBar {
            id: tabBar
            anchors.left: parent.left
            anchors.right: parent.right

53
            enabled: !editing
54 55 56

            readonly property int areaEditorIndex: 0
            readonly property int parameterEditorIndex: 1
57
            readonly property int nemoEditorIndex: 2
58 59 60 61 62
            property bool editing: _missionItem.editing

            Component.onCompleted: currentIndex = editing ? areaEditorIndex : parameterEditorIndex

            QGCTabButton {
63
                icon.source: "qrc:/res/waypoint.svg"
64 65 66 67 68 69 70
                icon.height: ScreenTools.defaultFontPixelHeight
            }
            QGCTabButton {
                icon.source: "/qmlimages/PatternGrid.png"
                icon.height: ScreenTools.defaultFontPixelHeight
            }
            QGCTabButton {
71
                icon.source: "qrc:/res/fish.svg"
72 73 74
                icon.height: ScreenTools.defaultFontPixelHeight
            }
        }
Valentin Platzgummer's avatar
Valentin Platzgummer committed
75

76 77 78 79 80 81 82
        MCI.AreaDataEditor {
            id: areaEditor

            visible: tabBar.currentIndex === tabBar.areaEditorIndex
            missionItem: _root._missionItem
            availableWidth: mainColumn.width
        }
83

84 85
        MCI.ParameterEditor {
            id: parameterEditor
86

87 88 89 90
            visible: tabBar.currentIndex === tabBar.parameterEditorIndex
            missionItem: _root._missionItem
            availableWidth: mainColumn.width
        }
91

92 93
        MCI.NemoEditor {
            id: nemoEditor
94

95 96 97
            visible: tabBar.currentIndex === tabBar.nemoEditorIndex
            missionItem: _root._missionItem
            availableWidth: mainColumn.width
98
        }
99
    } // main Column
100
} // Rectangle