diff --git a/src/AutoPilotPlugins/PX4/SafetyComponentSummary.qml b/src/AutoPilotPlugins/PX4/SafetyComponentSummary.qml index cb51780cc684c49fe077f0a337ce9266c026e256..2cf19b336d0b4ee8b64bd3d25c2e7b59631fcb04 100644 --- a/src/AutoPilotPlugins/PX4/SafetyComponentSummary.qml +++ b/src/AutoPilotPlugins/PX4/SafetyComponentSummary.qml @@ -14,46 +14,64 @@ FactPanel { QGCPalette { id: qgcPal; colorGroupEnabled: enabled } FactPanelController { id: controller; factPanel: panel } - property Fact returnAltFact: controller.getParameterFact(-1, "RTL_RETURN_ALT") - property Fact descendAltFact: controller.getParameterFact(-1, "RTL_DESCEND_ALT") - property Fact landDelayFact: controller.getParameterFact(-1, "RTL_LAND_DELAY") - property Fact commRCLossFact: controller.getParameterFact(-1, "COM_RC_LOSS_T") - property Fact lowBattAction: controller.getParameterFact(-1, "COM_LOW_BAT_ACT") - property Fact rcLossAction: controller.getParameterFact(-1, "NAV_RCL_ACT") - property Fact dataLossAction: controller.getParameterFact(-1, "NAV_DLL_ACT") + property Fact returnAltFact: controller.getParameterFact(-1, "RTL_RETURN_ALT") + property Fact _descendAltFact: controller.getParameterFact(-1, "RTL_DESCEND_ALT") + property Fact landDelayFact: controller.getParameterFact(-1, "RTL_LAND_DELAY") + property Fact commRCLossFact: controller.getParameterFact(-1, "COM_RC_LOSS_T") + property Fact lowBattAction: controller.getParameterFact(-1, "COM_LOW_BAT_ACT") + property Fact rcLossAction: controller.getParameterFact(-1, "NAV_RCL_ACT") + property Fact dataLossAction: controller.getParameterFact(-1, "NAV_DLL_ACT") + property Fact _rtlLandDelayFact: controller.getParameterFact(-1, "RTL_LAND_DELAY") + property int _rtlLandDelayValue: _rtlLandDelayFact.value Column { anchors.fill: parent VehicleSummaryRow { - labelText: qsTr("RTL min alt:") - valueText: returnAltFact ? returnAltFact.valueString + " " + returnAltFact.units : "" + labelText: qsTr("Low Battery Failsafe") + valueText: lowBattAction ? lowBattAction.enumStringValue : "" } VehicleSummaryRow { - labelText: qsTr("RTL home alt:") - valueText: descendAltFact ? descendAltFact.valueString + " " + descendAltFact.units : "" + labelText: qsTr("RC Loss Failsafe") + valueText: rcLossAction ? rcLossAction.enumStringValue : "" } VehicleSummaryRow { - labelText: qsTr("RC loss RTL:") + labelText: qsTr("RC Loss Timeout") valueText: commRCLossFact ? commRCLossFact.valueString + " " + commRCLossFact.units : "" } VehicleSummaryRow { - labelText: qsTr("RC loss action:") - valueText: rcLossAction ? rcLossAction.enumStringValue : "" + labelText: qsTr("Data Link Loss Failsafe") + valueText: dataLossAction ? dataLossAction.enumStringValue : "" } VehicleSummaryRow { - labelText: qsTr("Link loss action:") - valueText: dataLossAction ? dataLossAction.enumStringValue : "" + labelText: qsTr("RTL Climb To") + valueText: returnAltFact ? returnAltFact.valueString + " " + returnAltFact.units : "" } VehicleSummaryRow { - labelText: qsTr("Low battery action:") - valueText: lowBattAction ? lowBattAction.enumStringValue : "" + labelText: qsTr("RTL, Then") + valueText: _rtlLandDelayValue === 0 ? + qsTr("Land immediately") : + (_rtlLandDelayValue < 0 ? + qsTr("Loiter and do not land") : + qsTr("Loiter and land after specified time")) + } + VehicleSummaryRow { + labelText: qsTr("Loiter Alt") + valueText: _descendAltFact.valueString + " " + _descendAltFact.units + visible: _rtlLandDelayValue !== 0 + } + + VehicleSummaryRow { + labelText: qsTr("Land Delay") + valueText: _rtlLandDelayValue + " " + _rtlLandDelayFact.units + visible: _rtlLandDelayValue > 0 + } } }