diff --git a/src/blackcore/simulatorcommon.cpp b/src/blackcore/simulatorcommon.cpp index f28a58848..d2ddf85f1 100644 --- a/src/blackcore/simulatorcommon.cpp +++ b/src/blackcore/simulatorcommon.cpp @@ -337,6 +337,18 @@ namespace BlackCore return limInfo.arg(m_statsUpdateAircraftLimited).arg(m_limitUpdateAircraftBucket.getTokensPerSecond()); } + void CSimulatorCommon::resetLastSentValues() + { + m_lastSentParts.clear(); + m_lastSentSituations.clear(); + } + + void CSimulatorCommon::resetLastSentValues(const CCallsign &callsign) + { + m_lastSentParts.remove(callsign); + m_lastSentSituations.remove(callsign); + } + void CSimulatorCommon::onSwiftDbAllDataRead() { // void, can be overridden in specialized drivers diff --git a/src/blackcore/simulatorcommon.h b/src/blackcore/simulatorcommon.h index f87615260..ca4b6e598 100644 --- a/src/blackcore/simulatorcommon.h +++ b/src/blackcore/simulatorcommon.h @@ -152,6 +152,12 @@ namespace BlackCore //! Info about update aircraft limitations QString updateAircraftLimitationInfo() const; + //! Reset the last sent values + void resetLastSentValues(); + + //! Reset the last sent values per callsign + void resetLastSentValues(const BlackMisc::Aviation::CCallsign &callsign); + protected: //! Constructor CSimulatorCommon(const BlackMisc::Simulation::CSimulatorPluginInfo &info, diff --git a/src/blackgui/components/interpolationlogdisplay.cpp b/src/blackgui/components/interpolationlogdisplay.cpp index 23f5d4ae6..10a7a2f25 100644 --- a/src/blackgui/components/interpolationlogdisplay.cpp +++ b/src/blackgui/components/interpolationlogdisplay.cpp @@ -57,6 +57,7 @@ namespace BlackGui connect(ui->comp_CallsignCompleter, &CCallsignCompleter::validCallsignEntered, this, &CInterpolationLogDisplay::onCallsignEntered); connect(ui->hs_UpdateTime, &QSlider::valueChanged, this, &CInterpolationLogDisplay::onSliderChanged); connect(ui->pb_StartStop, &QPushButton::released, this, &CInterpolationLogDisplay::toggleStartStop); + connect(ui->pb_ResetLastSent, &QPushButton::released, this, &CInterpolationLogDisplay::resetLastSentValues); connect(ui->pb_ResetStats, &QPushButton::released, this, &CInterpolationLogDisplay::resetStatistics); connect(ui->pb_ShowLogInSimulator, &QPushButton::released, this, &CInterpolationLogDisplay::showLogInSimulator); connect(ui->pb_FollowInSimulator, &QPushButton::released, this, &CInterpolationLogDisplay::followInSimulator); @@ -332,6 +333,11 @@ namespace BlackGui if (m_simulatorCommon) { m_simulatorCommon->resetAircraftStatistics(); } } + void CInterpolationLogDisplay::resetLastSentValues() + { + if (m_simulatorCommon) { m_simulatorCommon->resetLastSentValues(); } + } + void CInterpolationLogDisplay::clear() { ui->tvp_AircraftParts->clear(); diff --git a/src/blackgui/components/interpolationlogdisplay.h b/src/blackgui/components/interpolationlogdisplay.h index bbd0080e0..12c52c8ea 100644 --- a/src/blackgui/components/interpolationlogdisplay.h +++ b/src/blackgui/components/interpolationlogdisplay.h @@ -120,6 +120,9 @@ namespace BlackGui //! \copydoc BlackCore::CSimulatorCommon::resetAircraftStatistics void resetStatistics(); + //! \copydoc BlackCore::CSimulatorCommon::resetLastSentValues + void resetLastSentValues(); + //! Clear void clear(); diff --git a/src/blackgui/components/interpolationlogdisplay.ui b/src/blackgui/components/interpolationlogdisplay.ui index 7cc2685ca..4ca424240 100644 --- a/src/blackgui/components/interpolationlogdisplay.ui +++ b/src/blackgui/components/interpolationlogdisplay.ui @@ -130,7 +130,7 @@ - + 3 @@ -183,6 +183,13 @@ + + + + reset last sent + + + @@ -765,6 +772,7 @@ le_UpdateTime hs_UpdateTime pb_ResetStats + pb_ResetLastSent pb_ShowLogInSimulator pb_FollowInSimulator pb_StartStop