diff --git a/src/MissionManager/MissionController.cc b/src/MissionManager/MissionController.cc index bc774f7f43e7b478490ecd347b746d894f2702ea..d8fd6782fa2c11926a69155ee255c1efb1f5e18b 100644 --- a/src/MissionManager/MissionController.cc +++ b/src/MissionManager/MissionController.cc @@ -640,7 +640,7 @@ bool MissionController::_loadJsonMissionFileV2(const QJsonObject& json, QmlObjec if (!JsonHelper::loadGeoCoordinate(json[_jsonPlannedHomePositionKey], true /* altitudeRequired */, homeCoordinate, errorString)) { return false; } - MissionSettingsItem* settingsItem = new MissionSettingsItem(_controllerVehicle, visualItems); + MissionSettingsItem* settingsItem = new MissionSettingsItem(_controllerVehicle, _editMode, visualItems); settingsItem->setCoordinate(homeCoordinate); visualItems->insert(0, settingsItem); qCDebug(MissionControllerLog) << "plannedHomePosition" << homeCoordinate; @@ -724,7 +724,7 @@ bool MissionController::_loadJsonMissionFileV2(const QJsonObject& json, QmlObjec visualItems->append(corridorItem); } else if (complexItemType == MissionSettingsItem::jsonComplexItemTypeValue) { qCDebug(MissionControllerLog) << "Loading Mission Settings: nextSequenceNumber" << nextSequenceNumber; - MissionSettingsItem* settingsItem = new MissionSettingsItem(_controllerVehicle, visualItems); + MissionSettingsItem* settingsItem = new MissionSettingsItem(_controllerVehicle, _editMode, visualItems); if (!settingsItem->load(itemObject, nextSequenceNumber++, errorString)) { return false; } @@ -1717,7 +1717,7 @@ double MissionController::_normalizeLon(double lon) /// Add the Mission Settings complex item to the front of the items void MissionController::_addMissionSettings(QmlObjectListModel* visualItems, bool addToCenter) { - MissionSettingsItem* settingsItem = new MissionSettingsItem(_controllerVehicle, visualItems); + MissionSettingsItem* settingsItem = new MissionSettingsItem(_controllerVehicle, _editMode, visualItems); qCDebug(MissionControllerLog) << "_addMissionSettings addToCenter" << addToCenter; diff --git a/src/MissionManager/MissionSettingsItem.cc b/src/MissionManager/MissionSettingsItem.cc index abe14a452a8f4e67363b8592349c89a54f3c2161..c0c482c616fec630f1d029b85893527a918de5d5 100644 --- a/src/MissionManager/MissionSettingsItem.cc +++ b/src/MissionManager/MissionSettingsItem.cc @@ -27,8 +27,9 @@ const char* MissionSettingsItem::_plannedHomePositionAltitudeName = "PlannedHome QMap MissionSettingsItem::_metaDataMap; -MissionSettingsItem::MissionSettingsItem(Vehicle* vehicle, QObject* parent) +MissionSettingsItem::MissionSettingsItem(Vehicle* vehicle, bool planView, QObject* parent) : ComplexMissionItem (vehicle, parent) + , _planView (planView) , _plannedHomePositionAltitudeFact (0, _plannedHomePositionAltitudeName, FactMetaData::valueTypeDouble) , _plannedHomePositionFromVehicle (false) , _missionEndRTL (false) @@ -299,3 +300,8 @@ void MissionSettingsItem::_setHomeAltFromTerrain(double terrainAltitude) _plannedHomePositionAltitudeFact.setRawValue(terrainAltitude); } } + +QString MissionSettingsItem::abbreviation(void) const +{ + return _planView ? tr("Planned Home") : tr("H"); +} diff --git a/src/MissionManager/MissionSettingsItem.h b/src/MissionManager/MissionSettingsItem.h index d20410917ddcd245265d2acd330b22d86a3ce5ce..d4935d1db9baca4307d0dd7e6a6a01a35bbcd64b 100644 --- a/src/MissionManager/MissionSettingsItem.h +++ b/src/MissionManager/MissionSettingsItem.h @@ -24,7 +24,7 @@ class MissionSettingsItem : public ComplexMissionItem Q_OBJECT public: - MissionSettingsItem(Vehicle* vehicle, QObject* parent = NULL); + MissionSettingsItem(Vehicle* vehicle, bool planView, QObject* parent = NULL); Q_PROPERTY(Fact* plannedHomePositionAltitude READ plannedHomePositionAltitude CONSTANT) Q_PROPERTY(bool missionEndRTL READ missionEndRTL WRITE setMissionEndRTL NOTIFY missionEndRTLChanged) @@ -68,7 +68,7 @@ public: bool specifiesAltitudeOnly (void) const final { return false; } QString commandDescription (void) const final { return "Mission Start"; } QString commandName (void) const final { return "Mission Start"; } - QString abbreviation (void) const final { return "H"; } + QString abbreviation (void) const final; QGeoCoordinate coordinate (void) const final { return _plannedHomePositionCoordinate; } QGeoCoordinate exitCoordinate (void) const final { return _plannedHomePositionCoordinate; } int sequenceNumber (void) const final { return _sequenceNumber; } @@ -101,15 +101,15 @@ private slots: void _setHomeAltFromTerrain (double terrainAltitude); private: + bool _planView; QGeoCoordinate _plannedHomePositionCoordinate; // Does not include altitude Fact _plannedHomePositionAltitudeFact; bool _plannedHomePositionFromVehicle; bool _missionEndRTL; CameraSection _cameraSection; SpeedSection _speedSection; - - int _sequenceNumber; - bool _dirty; + int _sequenceNumber; + bool _dirty; static QMap _metaDataMap; diff --git a/src/MissionManager/MissionSettingsTest.cc b/src/MissionManager/MissionSettingsTest.cc index 26b3a342e60a011209fb52b487ad4a0fea5c420f..df6cd8f5ecf9b5630a3db7e25207f7283aea6bea 100644 --- a/src/MissionManager/MissionSettingsTest.cc +++ b/src/MissionManager/MissionSettingsTest.cc @@ -22,7 +22,7 @@ void MissionSettingsTest::init(void) { VisualMissionItemTest::init(); - _settingsItem = new MissionSettingsItem(_offlineVehicle, this); + _settingsItem = new MissionSettingsItem(_offlineVehicle, true /* planView */, this); } void MissionSettingsTest::cleanup(void) diff --git a/src/PlanView/MissionItemEditor.qml b/src/PlanView/MissionItemEditor.qml index 18083de522dc4814967d09be7cf3d9312f2bc0ce..26dee4bedeb7d0ec269b67d127a363a499345ddb 100644 --- a/src/PlanView/MissionItemEditor.qml +++ b/src/PlanView/MissionItemEditor.qml @@ -76,7 +76,7 @@ Rectangle { anchors.verticalCenter: commandPicker.verticalCenter anchors.leftMargin: _margin anchors.left: parent.left - text: missionItem.homePosition ? "H" : missionItem.sequenceNumber + text: missionItem.homePosition ? "P" : missionItem.sequenceNumber color: _outerTextColor } diff --git a/src/QmlControls/MissionItemIndexLabel.qml b/src/QmlControls/MissionItemIndexLabel.qml index 5b0e662f5951b5b58600c406e5a6e7ab6b94e292..ff88b1f56099823c54a03c44195cb886ccdac42d 100644 --- a/src/QmlControls/MissionItemIndexLabel.qml +++ b/src/QmlControls/MissionItemIndexLabel.qml @@ -33,7 +33,7 @@ Canvas { property real _gimbalRadians: degreesToRadians(vehicleYaw + gimbalYaw - 90) property real _labelMargin: 2 property real _labelRadius: _indicatorRadius + _labelMargin - property string _label: index === 0 ? "" : label + property string _label: label.length > 1 ? label : "" property string _index: index === 0 || index === -1 ? label.charAt(0) : index onColorChanged: requestPaint()