From 30b50ff9e23261f610588e2d18be0b0d9ce85d8c Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Wed, 24 Sep 2014 17:25:28 +0000 Subject: [PATCH] Do not set split Tx frequency when rig changes frequency. WSJT-X was attempting to set the split Tx frequency when a dial change from the rig is detected. Because of the way some rigs and rig servers report the Tx frequency while the rig is in Tx mode this was causing the rig to "walk" along the band. Setting of split Tx frequency has been limited to WSJT-X initiated instances only. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4350 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- mainwindow.cpp | 49 ++++++++++++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 23 deletions(-) diff --git a/mainwindow.cpp b/mainwindow.cpp index eed28efe1..0f782cb41 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -837,33 +837,35 @@ void MainWindow::bumpFqso(int n) //bumpFqso() void MainWindow::qsy (Frequency f) { - if (m_monitoring || m_transmitting) + if (!m_transmitting) { - m_lastMonitoredFrequency = f; - } - - if (m_dialFreq != f) - { - m_dialFreq = f; - setXIT(ui->TxFreqSpinBox->value ()); - - m_repeatMsg=0; - m_secBandChanged=QDateTime::currentMSecsSinceEpoch()/1000; - - QFile f2(m_config.data_path ().absoluteFilePath ("ALL.TXT")); - f2.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Append); - QTextStream out(&f2); - out << QDateTime::currentDateTimeUtc().toString("yyyy-MMM-dd hh:mm") - << " " << (m_dialFreq / 1.e6) << " MHz " << m_mode << endl; - f2.close(); - if (m_config.spot_to_psk_reporter ()) + if (m_monitoring) { - pskSetLocal (); + m_lastMonitoredFrequency = f; } - displayDialFrequency (); - statusChanged(); - m_wideGraph->setDialFreq(m_dialFreq / 1.e6); + if (m_dialFreq != f) + { + m_dialFreq = f; + + m_repeatMsg=0; + m_secBandChanged=QDateTime::currentMSecsSinceEpoch()/1000; + + QFile f2(m_config.data_path ().absoluteFilePath ("ALL.TXT")); + f2.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Append); + QTextStream out(&f2); + out << QDateTime::currentDateTimeUtc().toString("yyyy-MMM-dd hh:mm") + << " " << (m_dialFreq / 1.e6) << " MHz " << m_mode << endl; + f2.close(); + if (m_config.spot_to_psk_reporter ()) + { + pskSetLocal (); + } + + displayDialFrequency (); + statusChanged(); + m_wideGraph->setDialFreq(m_dialFreq / 1.e6); + } } } @@ -2512,6 +2514,7 @@ void MainWindow::band_changed (Frequency f) Q_EMIT m_config.transceiver_frequency (f); qsy (f); + setXIT (ui->TxFreqSpinBox->value ()); } }