From 9db61e11f08ec66f66c08dc0aec389e804e1daa2 Mon Sep 17 00:00:00 2001 From: DonLakeFlyer Date: Wed, 2 May 2018 14:47:55 -0700 Subject: [PATCH 1/2] Fix Cancel dialog not going away --- src/AutoPilotPlugins/PX4/SensorsSetup.qml | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/src/AutoPilotPlugins/PX4/SensorsSetup.qml b/src/AutoPilotPlugins/PX4/SensorsSetup.qml index 28bb18b..673c36a 100644 --- a/src/AutoPilotPlugins/PX4/SensorsSetup.qml +++ b/src/AutoPilotPlugins/PX4/SensorsSetup.qml @@ -140,9 +140,7 @@ Item { onWaitingForCancelChanged: { if (controller.waitingForCancel) { - showMessage(qsTr("Calibration Cancel"), qsTr("Waiting for Vehicle to response to Cancel. This may take a few seconds."), 0) - } else { - hideDialog() + showDialog(waitForCancelDialogComponent, qsTr("Calibration Cancel"), qgcView.showDialogDefaultWidth, 0) } } } @@ -155,6 +153,24 @@ Item { } Component { + id: waitForCancelDialogComponent + + QGCViewMessage { + message: qsTr("Waiting for Vehicle to response to Cancel. This may take a few seconds.") + + Connections { + target: controller + + onWaitingForCancelChanged: { + if (!controller.waitingForCancel) { + hideDialog() + } + } + } + } + } + + Component { id: preCalibrationDialogComponent QGCViewDialog { From 0556fad5a3725806a15968cac66c776beacb65ce Mon Sep 17 00:00:00 2001 From: DonLakeFlyer Date: Wed, 2 May 2018 14:48:13 -0700 Subject: [PATCH 2/2] Airspeed/Level cal leaves log text up when cal complete --- .../PX4/SensorsComponentController.cc | 95 ++++++++++++---------- .../PX4/SensorsComponentController.h | 4 +- 2 files changed, 53 insertions(+), 46 deletions(-) diff --git a/src/AutoPilotPlugins/PX4/SensorsComponentController.cc b/src/AutoPilotPlugins/PX4/SensorsComponentController.cc index 5ab1327..032f540 100644 --- a/src/AutoPilotPlugins/PX4/SensorsComponentController.cc +++ b/src/AutoPilotPlugins/PX4/SensorsComponentController.cc @@ -7,10 +7,6 @@ * ****************************************************************************/ - -/// @file -/// @author Don Gagne - #include "SensorsComponentController.h" #include "QGCMAVLink.h" #include "UAS.h" @@ -22,46 +18,48 @@ QGC_LOGGING_CATEGORY(SensorsComponentControllerLog, "SensorsComponentControllerLog") -SensorsComponentController::SensorsComponentController(void) : - _statusLog(NULL), - _progressBar(NULL), - _compassButton(NULL), - _gyroButton(NULL), - _accelButton(NULL), - _airspeedButton(NULL), - _levelButton(NULL), - _cancelButton(NULL), - _setOrientationsButton(NULL), - _showOrientationCalArea(false), - _gyroCalInProgress(false), - _magCalInProgress(false), - _accelCalInProgress(false), - _orientationCalDownSideDone(false), - _orientationCalUpsideDownSideDone(false), - _orientationCalLeftSideDone(false), - _orientationCalRightSideDone(false), - _orientationCalNoseDownSideDone(false), - _orientationCalTailDownSideDone(false), - _orientationCalDownSideVisible(false), - _orientationCalUpsideDownSideVisible(false), - _orientationCalLeftSideVisible(false), - _orientationCalRightSideVisible(false), - _orientationCalNoseDownSideVisible(false), - _orientationCalTailDownSideVisible(false), - _orientationCalDownSideInProgress(false), - _orientationCalUpsideDownSideInProgress(false), - _orientationCalLeftSideInProgress(false), - _orientationCalRightSideInProgress(false), - _orientationCalNoseDownSideInProgress(false), - _orientationCalTailDownSideInProgress(false), - _orientationCalDownSideRotate(false), - _orientationCalUpsideDownSideRotate(false), - _orientationCalLeftSideRotate(false), - _orientationCalRightSideRotate(false), - _orientationCalNoseDownSideRotate(false), - _orientationCalTailDownSideRotate(false), - _unknownFirmwareVersion(false), - _waitingForCancel(false) +SensorsComponentController::SensorsComponentController(void) + : _statusLog (NULL) + , _progressBar (NULL) + , _compassButton (NULL) + , _gyroButton (NULL) + , _accelButton (NULL) + , _airspeedButton (NULL) + , _levelButton (NULL) + , _cancelButton (NULL) + , _setOrientationsButton (NULL) + , _showOrientationCalArea (false) + , _gyroCalInProgress (false) + , _magCalInProgress (false) + , _accelCalInProgress (false) + , _airspeedCalInProgress (false) + , _levelCalInProgress (false) + , _orientationCalDownSideDone (false) + , _orientationCalUpsideDownSideDone (false) + , _orientationCalLeftSideDone (false) + , _orientationCalRightSideDone (false) + , _orientationCalNoseDownSideDone (false) + , _orientationCalTailDownSideDone (false) + , _orientationCalDownSideVisible (false) + , _orientationCalUpsideDownSideVisible (false) + , _orientationCalLeftSideVisible (false) + , _orientationCalRightSideVisible (false) + , _orientationCalNoseDownSideVisible (false) + , _orientationCalTailDownSideVisible (false) + , _orientationCalDownSideInProgress (false) + , _orientationCalUpsideDownSideInProgress (false) + , _orientationCalLeftSideInProgress (false) + , _orientationCalRightSideInProgress (false) + , _orientationCalNoseDownSideInProgress (false) + , _orientationCalTailDownSideInProgress (false) + , _orientationCalDownSideRotate (false) + , _orientationCalUpsideDownSideRotate (false) + , _orientationCalLeftSideRotate (false) + , _orientationCalRightSideRotate (false) + , _orientationCalNoseDownSideRotate (false) + , _orientationCalTailDownSideRotate (false) + , _unknownFirmwareVersion (false) + , _waitingForCancel (false) { } @@ -165,7 +163,9 @@ void SensorsComponentController::_stopCalibration(SensorsComponentController::St switch (code) { case StopCalibrationSuccess: _orientationCalAreaHelpText->setProperty("text", tr("Calibration complete")); - emit resetStatusTextArea(); + if (!_airspeedCalInProgress && !_levelCalInProgress) { + emit resetStatusTextArea(); + } if (_magCalInProgress) { emit setCompassRotations(); } @@ -186,6 +186,7 @@ void SensorsComponentController::_stopCalibration(SensorsComponentController::St _magCalInProgress = false; _accelCalInProgress = false; _gyroCalInProgress = false; + _airspeedCalInProgress = false; } void SensorsComponentController::calibrateGyro(void) @@ -336,6 +337,10 @@ void SensorsComponentController::_handleUASTextMessage(int uasId, int compId, in emit orientationCalSidesVisibleChanged(); emit orientationCalSidesInProgressChanged(); _updateAndEmitShowOrientationCalArea(true); + } else if (text == "airspeed") { + _airspeedCalInProgress = true; + } else if (text == "level") { + _levelCalInProgress = true; } return; } diff --git a/src/AutoPilotPlugins/PX4/SensorsComponentController.h b/src/AutoPilotPlugins/PX4/SensorsComponentController.h index b2369a4..d9cb441 100644 --- a/src/AutoPilotPlugins/PX4/SensorsComponentController.h +++ b/src/AutoPilotPlugins/PX4/SensorsComponentController.h @@ -131,7 +131,9 @@ private: bool _gyroCalInProgress; bool _magCalInProgress; bool _accelCalInProgress; - + bool _airspeedCalInProgress; + bool _levelCalInProgress; + bool _orientationCalDownSideDone; bool _orientationCalUpsideDownSideDone; bool _orientationCalLeftSideDone;