[skip ci] fix: Trigger change only when updated internally

This commit is contained in:
Lars Toenning
2025-07-12 22:44:00 +02:00
parent dbf2c35e5d
commit 123f722cd2

View File

@@ -64,12 +64,12 @@ namespace swift::gui::components
QComboBox::setCurrentText(m); QComboBox::setCurrentText(m);
if (mode == CTransponder::StateIdent) { m_resetTimer.start(); } if (mode == CTransponder::StateIdent) { m_resetTimer.start(); }
else { m_resetTimer.stop(); } else { m_resetTimer.stop(); }
emit this->transponderModeChanged(m_currentMode);
} }
void CTransponderModeSelector::setSelectedTransponderModeStateIdent() void CTransponderModeSelector::setSelectedTransponderModeStateIdent()
{ {
this->setSelectedTransponderMode(swift::misc::aviation::CTransponder::StateIdent); this->setSelectedTransponderMode(swift::misc::aviation::CTransponder::StateIdent);
emit this->transponderModeChanged(m_currentMode);
} }
void CTransponderModeSelector::setSelectedTransponderModeAsString(const QString &mode) void CTransponderModeSelector::setSelectedTransponderModeAsString(const QString &mode)
@@ -77,11 +77,13 @@ namespace swift::gui::components
CTransponder::TransponderMode m = CTransponder::modeFromString(mode); CTransponder::TransponderMode m = CTransponder::modeFromString(mode);
if (m_currentMode == m) return; // nothing to change if (m_currentMode == m) return; // nothing to change
this->setSelectedTransponderMode(m); this->setSelectedTransponderMode(m);
emit this->transponderModeChanged(m_currentMode);
} }
void CTransponderModeSelector::resetTransponderMode() void CTransponderModeSelector::resetTransponderMode()
{ {
if (!this->isIdentSelected()) return; // avoid unnecessary events if (!this->isIdentSelected()) return; // avoid unnecessary events
this->setSelectedTransponderMode(m_resetMode); this->setSelectedTransponderMode(m_resetMode);
emit this->transponderModeChanged(m_currentMode);
} }
} // namespace swift::gui::components } // namespace swift::gui::components