diff --git a/src/PlanView/MissionItemEditor.qml b/src/PlanView/MissionItemEditor.qml index a582200fb6bb2c858c72305c0cc71cccf0b94968..ecf928a6e37208afc043a67637d02a750bf6ccc3 100644 --- a/src/PlanView/MissionItemEditor.qml +++ b/src/PlanView/MissionItemEditor.qml @@ -33,6 +33,7 @@ Rectangle { property color _outerTextColor: _currentItem ? qgcPal.primaryButtonText : qgcPal.text property bool _noMissionItemsAdded: ListView.view.model.count === 1 property real _sectionSpacer: ScreenTools.defaultFontPixelWidth / 2 // spacing between section headings + property bool _singleComplexItem: missionController.complexMissionItemNames.length === 1 readonly property real _editFieldWidth: Math.min(width - _margin * 2, ScreenTools.defaultFontPixelWidth * 12) readonly property real _margin: ScreenTools.defaultFontPixelWidth / 2 @@ -63,7 +64,7 @@ Rectangle { anchors.verticalCenter: commandPicker.verticalCenter anchors.leftMargin: _margin anchors.left: parent.left - text: missionItem.abbreviation.charAt(0) + text: missionItem.homePosition ? "H" : missionItem.sequenceNumber color: _outerTextColor } @@ -97,20 +98,16 @@ Rectangle { onTriggered: insertWaypoint() } - MenuItem { - text: qsTr("Delete") - onTriggered: remove() - } - Menu { - id: normalPatternMenu - title: qsTr("Insert pattern") + id: patternMenu + title: qsTr("Insert pattern") + visible: !_singleComplexItem Instantiator { model: missionController.complexMissionItemNames - onObjectAdded: normalPatternMenu.insertItem(index, object) - onObjectRemoved: normalPatternMenu.removeItem(object) + onObjectAdded: patternMenu.insertItem(index, object) + onObjectRemoved: patternMenu.removeItem(object) MenuItem { text: modelData @@ -119,6 +116,17 @@ Rectangle { } } + MenuItem { + text: qsTr("Insert ") + missionController.complexMissionItemNames[0] + visible: _singleComplexItem + onTriggered: insertComplexItem(missionController.complexMissionItemNames[0]) + } + + MenuItem { + text: qsTr("Delete") + onTriggered: remove() + } + MenuItem { text: qsTr("Change command...") onTriggered: commandPicker.clicked()