Browse Source

Add ability to reset only Error level vehicle messages

QGC4.4
Don Gagne 2 years ago committed by Philipp Borgers
parent
commit
732f849a3d
  1. 27
      src/Vehicle/Vehicle.cc
  2. 3
      src/Vehicle/Vehicle.h

27
src/Vehicle/Vehicle.cc

@ -2056,7 +2056,7 @@ void Vehicle::_handleTextMessage(int newCount) @@ -2056,7 +2056,7 @@ void Vehicle::_handleTextMessage(int newCount)
}
}
void Vehicle::resetMessages()
void Vehicle::resetAllMessages()
{
// Reset Counts
int count = _currentMessageCount;
@ -2074,6 +2074,31 @@ void Vehicle::resetMessages() @@ -2074,6 +2074,31 @@ void Vehicle::resetMessages()
}
}
// Reset warning counts only
void Vehicle::resetErrorLevelMessages()
{
int prevMessageCount = _currentMessageCount;
MessageType_t prevMessagetype = _currentMessageType;
_currentMessageCount -= _currentErrorCount;
_currentErrorCount = 0;
if (_currentWarningCount > 0) {
_currentMessageType = MessageWarning;
} else if (_currentNormalCount > 0) {
_currentMessageType = MessageNormal;
} else {
_currentMessageType = MessageNone;
}
if (prevMessageCount != _currentMessageCount) {
emit newMessageCountChanged();
}
if (prevMessagetype != _currentMessageType) {
emit messageTypeChanged();
}
}
void Vehicle::_loadSettings()
{
QSettings settings;

3
src/Vehicle/Vehicle.h

@ -343,7 +343,8 @@ public: @@ -343,7 +343,8 @@ public:
Q_INVOKABLE void resetCounters ();
// Called when the message drop-down is invoked to clear current count
Q_INVOKABLE void resetMessages();
Q_INVOKABLE void resetAllMessages();
Q_INVOKABLE void resetErrorLevelMessages();
Q_INVOKABLE void virtualTabletJoystickValue(double roll, double pitch, double yaw, double thrust);

Loading…
Cancel
Save