diff --git a/src/PlanView/MissionItemStatus.qml b/src/PlanView/MissionItemStatus.qml index 37d5d9fba0e4a2c5d2cf55de83fede7afc67da7d..de462cf50047eaed269da494761797e8e0fd42e8 100644 --- a/src/PlanView/MissionItemStatus.qml +++ b/src/PlanView/MissionItemStatus.qml @@ -25,9 +25,11 @@ Rectangle { opacity: 0.80 clip: true - property var missionItems ///< List of all available mission items + property var missionItems ///< List of all available mission items + property real maxWidth: parent.width + + signal setCurrentSeqNum(int seqNum) - property real maxWidth: parent.width readonly property real _margins: ScreenTools.defaultFontPixelWidth onMaxWidthChanged: { @@ -97,7 +99,9 @@ Rectangle { checked: object.isCurrentItem label: object.abbreviation.charAt(0) index: object.abbreviation.charAt(0) > 'A' && object.abbreviation.charAt(0) < 'z' ? -1 : object.sequenceNumber + showSequenceNumbers: true visible: true + onClicked: root.setCurrentSeqNum(object.sequenceNumber) } } } diff --git a/src/PlanView/PlanView.qml b/src/PlanView/PlanView.qml index 489bfd4f7da268bc6a99e857fcc5486224edec92..ca988cb385757a2b6f60229c49b1640ad1040385 100644 --- a/src/PlanView/PlanView.qml +++ b/src/PlanView/PlanView.qml @@ -884,6 +884,8 @@ Item { missionItems: _missionController.visualItems visible: _internalVisible && _editingLayer === _layerMission && QGroundControl.corePlugin.options.showMissionStatus + onSetCurrentSeqNum: _missionController.setCurrentPlanViewSeqNum(seqNum, true) + property bool _internalVisible: false function toggleVisible() { diff --git a/src/QmlControls/MissionItemIndexLabel.qml b/src/QmlControls/MissionItemIndexLabel.qml index c3e7ed4747277000da4fa2c153e26e093004c94e..666b2deba225bebe4fe3708198a56e9acd0cc2dc 100644 --- a/src/QmlControls/MissionItemIndexLabel.qml +++ b/src/QmlControls/MissionItemIndexLabel.qml @@ -25,6 +25,7 @@ Canvas { property real gimbalYaw property real vehicleYaw property bool showGimbalYaw: false + property bool showSequenceNumbers: false property real _width: showGimbalYaw ? Math.max(_gimbalYawWidth, labelControl.visible ? labelControl.width : indicator.width) : (labelControl.visible ? labelControl.width : indicator.width) property real _height: showGimbalYaw ? _gimbalYawWidth : (labelControl.visible ? labelControl.height : indicator.height) @@ -37,7 +38,7 @@ Canvas { property real _labelMargin: 2 property real _labelRadius: _indicatorRadius + _labelMargin property string _label: label.length > 1 ? label : "" - property string _index: index === 0 || index === -1 ? label.charAt(0) : "" /*index*/ + property string _index: index === 0 || index === -1 ? label.charAt(0) : (showSequenceNumbers ? index : "") onColorChanged: requestPaint() onShowGimbalYawChanged: requestPaint()