MissionItemIndicator.qml 1.73 KB
Newer Older
1 2
/****************************************************************************
 *
3
 * (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
4 5 6 7 8
 *
 * QGroundControl is licensed according to the terms in the file
 * COPYING.md in the root of the source code directory.
 *
 ****************************************************************************/
9 10


11 12
import QtQuick      2.3
import QtLocation   5.3
13 14 15

import QGroundControl.ScreenTools   1.0
import QGroundControl.Controls      1.0
16
import QGroundControl.Vehicle       1.0
17 18 19

/// Marker for displaying a mission item on the map
MapQuickItem {
20 21
    id: _item

22
    property var missionItem
23
    property int sequenceNumber
24
    property var color
25

26 27
    signal clicked

28 29
    anchorPoint.x:  sourceItem.anchorPointX
    anchorPoint.y:  sourceItem.anchorPointY
30 31 32

    sourceItem:
        MissionItemIndexLabel {
33 34 35 36 37 38 39 40 41
            id:                 _label
            checked:            _isCurrentItem
            label:              missionItem.abbreviation
            index:              missionItem.abbreviation.charAt(0) > 'A' && missionItem.abbreviation.charAt(0) < 'z' ? -1 : missionItem.sequenceNumber
            gimbalYaw:          missionItem.missionGimbalYaw
            vehicleYaw:         missionItem.missionVehicleYaw
            showGimbalYaw:      !isNaN(missionItem.missionGimbalYaw)
            highlightSelected:  true
            onClicked:          _item.clicked()
42 43
            color:          _item.color ? _item.color
                          : checked ? "green" : (child ? qgcPal.mapIndicatorChild : qgcPal.mapIndicator)
44 45 46
            opacity:            _item.opacity

            property bool _isCurrentItem:   missionItem ? missionItem.isCurrentItem || missionItem.hasCurrentChildItem : false
47 48
        }
}