Browse Source

Merge pull request #4546 from dkschrad/master

Addition of "Abort" button
QGC4.4
Don Gagne 8 years ago committed by GitHub
parent
commit
929d4a02a1
  1. 14
      src/FlightDisplay/FlightDisplayViewWidgets.qml
  2. 8
      src/Vehicle/Vehicle.cc
  3. 3
      src/Vehicle/Vehicle.h

14
src/FlightDisplay/FlightDisplayViewWidgets.qml

@ -218,6 +218,7 @@ Item { @@ -218,6 +218,7 @@ Item {
readonly property int confirmGoTo: 8
readonly property int confirmRetask: 9
readonly property int confirmOrbit: 10
readonly property int confirmAbort: 11
property int confirmActionCode
property real _showMargin: _margins
@ -265,6 +266,9 @@ Item { @@ -265,6 +266,9 @@ Item {
//-- Center on current flight map position and orbit with a 50m radius (velocity/direction controlled by the RC)
//_activeVehicle.guidedModeOrbit(QGroundControl.flightMapPosition, 50.0)
break;
case confirmAbort:
_activeVehicle.abortLanding(50) // hardcoded value for climbOutAltitude that is currently ignored
break;
default:
console.warn(qsTr("Internal error: unknown confirmActionCode"), confirmActionCode)
}
@ -316,6 +320,9 @@ Item { @@ -316,6 +320,9 @@ Item {
case confirmOrbit:
guidedModeConfirm.confirmText = qsTr("enter orbit mode")
break;
case confirmAbort:
guidedModeConfirm.confirmText = qsTr("abort landing")
break;
}
_guidedModeBar.visible = false
guidedModeConfirm.visible = true
@ -383,6 +390,13 @@ Item { @@ -383,6 +390,13 @@ Item {
onClicked: _guidedModeBar.confirmAction(_guidedModeBar.confirmOrbit)
}
QGCButton {
pointSize: _guidedModeBar._fontPointSize
text: qsTr("Abort")
visible: _activeVehicle && _activeVehicle.flying && _activeVehicle.fixedWing
onClicked: _guidedModeBar.confirmAction(_guidedModeBar.confirmAbort)
}
} // Row
} // Column
} // Rectangle - Guided mode buttons

8
src/Vehicle/Vehicle.cc

@ -1897,6 +1897,14 @@ void Vehicle::pauseVehicle(void) @@ -1897,6 +1897,14 @@ void Vehicle::pauseVehicle(void)
_firmwarePlugin->pauseVehicle(this);
}
void Vehicle::abortLanding(double climbOutAltitude)
{
sendMavCommand(defaultComponentId(),
MAV_CMD_DO_GO_AROUND,
true, // show error if fails
climbOutAltitude);
}
bool Vehicle::guidedMode(void) const
{
return _firmwarePlugin->isGuidedMode(this);

3
src/Vehicle/Vehicle.h

@ -364,6 +364,9 @@ public: @@ -364,6 +364,9 @@ public:
/// Command vehicle to kill all motors no matter what state
Q_INVOKABLE void emergencyStop(void);
/// Command vehicle to abort landing
Q_INVOKABLE void abortLanding(double climbOutAltitude);
/// Alter the current mission item on the vehicle
Q_INVOKABLE void setCurrentMissionSequence(int seq);

Loading…
Cancel
Save