mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-21 19:55:20 -05:00
Do not make unneeded rig adjustments when Doppler tracking disabled
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5595 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
98f84a5902
commit
588c037ae9
12
astro.cpp
12
astro.cpp
@ -36,6 +36,7 @@ Astro::Astro(QSettings * settings, Configuration const * configuration, QWidget
|
|||||||
setWindowTitle (QApplication::applicationName () + " - " + tr ("Astronomical Data"));
|
setWindowTitle (QApplication::applicationName () + " - " + tr ("Astronomical Data"));
|
||||||
setStyleSheet ("QWidget {background: white;}");
|
setStyleSheet ("QWidget {background: white;}");
|
||||||
connect (ui_->cbDopplerTracking, &QAbstractButton::toggled, ui_->doppler_widget, &QWidget::setVisible);
|
connect (ui_->cbDopplerTracking, &QAbstractButton::toggled, ui_->doppler_widget, &QWidget::setVisible);
|
||||||
|
connect (ui_->cbDopplerTracking, &QAbstractButton::toggled, this, &Astro::doppler_tracking_toggled);
|
||||||
read_settings ();
|
read_settings ();
|
||||||
ui_->text_label->clear ();
|
ui_->text_label->clear ();
|
||||||
}
|
}
|
||||||
@ -180,17 +181,17 @@ auto Astro::astroUpdate(QDateTime const& t, QString const& mygrid, QString const
|
|||||||
|
|
||||||
void Astro::on_rbFullTrack_clicked()
|
void Astro::on_rbFullTrack_clicked()
|
||||||
{
|
{
|
||||||
m_DopplerMethod=1;
|
m_DopplerMethod = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Astro::on_rbConstFreqOnMoon_clicked()
|
void Astro::on_rbConstFreqOnMoon_clicked()
|
||||||
{
|
{
|
||||||
m_DopplerMethod=2;
|
m_DopplerMethod = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Astro::on_rbNoDoppler_clicked()
|
void Astro::on_rbNoDoppler_clicked()
|
||||||
{
|
{
|
||||||
m_DopplerMethod=0;
|
m_DopplerMethod = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Astro::on_rb1Hz_clicked()
|
void Astro::on_rb1Hz_clicked()
|
||||||
@ -222,3 +223,8 @@ void Astro::on_HzSpinBox_valueChanged(int n)
|
|||||||
{
|
{
|
||||||
m_Hz=n;
|
m_Hz=n;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Astro::doppler_tracking () const
|
||||||
|
{
|
||||||
|
return ui_->cbDopplerTracking->isChecked ();
|
||||||
|
}
|
||||||
|
2
astro.h
2
astro.h
@ -24,6 +24,8 @@ public:
|
|||||||
~Astro ();
|
~Astro ();
|
||||||
FrequencyDelta astroUpdate(QDateTime const& t, QString const& mygrid, QString const& hisgrid, Frequency frequency,
|
FrequencyDelta astroUpdate(QDateTime const& t, QString const& mygrid, QString const& hisgrid, Frequency frequency,
|
||||||
bool dx_is_self, bool bTx);
|
bool dx_is_self, bool bTx);
|
||||||
|
bool doppler_tracking () const;
|
||||||
|
Q_SIGNAL void doppler_tracking_toggled (bool);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void closeEvent (QCloseEvent *) override;
|
void closeEvent (QCloseEvent *) override;
|
||||||
|
@ -1362,6 +1362,8 @@ void MainWindow::on_actionAstronomical_data_triggered()
|
|||||||
|
|
||||||
// hook up termination signal
|
// hook up termination signal
|
||||||
connect (this, &MainWindow::finished, m_astroWidget.data (), &Astro::close);
|
connect (this, &MainWindow::finished, m_astroWidget.data (), &Astro::close);
|
||||||
|
connect (m_astroWidget.data (), &Astro::doppler_tracking_toggled
|
||||||
|
, this, &MainWindow::DopplerTracking_toggled);
|
||||||
}
|
}
|
||||||
m_astroWidget->showNormal();
|
m_astroWidget->showNormal();
|
||||||
m_astroWidget->raise ();
|
m_astroWidget->raise ();
|
||||||
@ -2147,23 +2149,9 @@ void MainWindow::guiUpdate()
|
|||||||
if(m_monitoring or m_transmitting) ipct=int(100*m_nseq/txDuration);
|
if(m_monitoring or m_transmitting) ipct=int(100*m_nseq/txDuration);
|
||||||
progressBar->setValue(ipct);
|
progressBar->setValue(ipct);
|
||||||
}
|
}
|
||||||
|
|
||||||
QDateTime t = QDateTime::currentDateTimeUtc();
|
QDateTime t = QDateTime::currentDateTimeUtc();
|
||||||
if (m_astroWidget) {
|
astroCalculations (t, m_astroWidget && m_astroWidget->doppler_tracking ());
|
||||||
auto astro_correction = m_astroWidget->astroUpdate(t, m_config.my_grid (), m_hisGrid
|
|
||||||
, m_dialFreq, "Echo" == m_mode, m_transmitting);
|
|
||||||
if (!m_bSimplex // only adjust frequency if allowed by mode
|
|
||||||
&& m_dialFreq >= 50000000) { // and above 50MHz
|
|
||||||
if(m_transmitting) {
|
|
||||||
m_dialFreqTx = m_freqNominal + astro_correction;
|
|
||||||
ui->labDialFreq->setText (Radio::pretty_frequency_MHz_string (m_dialFreqTx));
|
|
||||||
Q_EMIT m_config.transceiver_tx_frequency (m_dialFreqTx);
|
|
||||||
} else {
|
|
||||||
m_dialFreq = m_freqNominal + astro_correction;
|
|
||||||
ui->labDialFreq->setText (Radio::pretty_frequency_MHz_string (m_dialFreq));
|
|
||||||
Q_EMIT m_config.transceiver_frequency(m_dialFreq);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(m_transmitting) {
|
if(m_transmitting) {
|
||||||
char s[37];
|
char s[37];
|
||||||
@ -4344,3 +4332,31 @@ void MainWindow::on_tabWidget_currentChanged (int new_value)
|
|||||||
m_nonWSPRTab = new_value;
|
m_nonWSPRTab = new_value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::DopplerTracking_toggled (bool enabled)
|
||||||
|
{
|
||||||
|
if (!enabled) {
|
||||||
|
// do one astro update and last adjustment
|
||||||
|
astroCalculations (QDateTime::currentDateTimeUtc(), true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void MainWindow::astroCalculations (QDateTime const& time, bool adjust) {
|
||||||
|
if (m_astroWidget) {
|
||||||
|
auto astro_correction = m_astroWidget->astroUpdate(time, m_config.my_grid (), m_hisGrid
|
||||||
|
, m_dialFreq, "Echo" == m_mode, m_transmitting);
|
||||||
|
if (adjust && !m_bSimplex // only adjust frequency if
|
||||||
|
// requested and allowed by mode
|
||||||
|
&& m_dialFreq >= 50000000) { // and above 50MHz
|
||||||
|
if(m_transmitting) {
|
||||||
|
m_dialFreqTx = m_freqNominal + astro_correction;
|
||||||
|
ui->labDialFreq->setText (Radio::pretty_frequency_MHz_string (m_dialFreqTx));
|
||||||
|
Q_EMIT m_config.transceiver_tx_frequency (m_dialFreqTx);
|
||||||
|
} else {
|
||||||
|
m_dialFreq = m_freqNominal + astro_correction;
|
||||||
|
ui->labDialFreq->setText (Radio::pretty_frequency_MHz_string (m_dialFreq));
|
||||||
|
Q_EMIT m_config.transceiver_frequency(m_dialFreq);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -234,6 +234,7 @@ private slots:
|
|||||||
void on_actionEcho_Graph_triggered();
|
void on_actionEcho_Graph_triggered();
|
||||||
|
|
||||||
void on_actionEcho_triggered();
|
void on_actionEcho_triggered();
|
||||||
|
void DopplerTracking_toggled (bool);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Q_SIGNAL void initializeAudioOutputStream (QAudioDeviceInfo,
|
Q_SIGNAL void initializeAudioOutputStream (QAudioDeviceInfo,
|
||||||
@ -509,6 +510,7 @@ private:
|
|||||||
void enable_DXCC_entity (bool on);
|
void enable_DXCC_entity (bool on);
|
||||||
void switch_mode (Mode);
|
void switch_mode (Mode);
|
||||||
void WSPR_scheduling ();
|
void WSPR_scheduling ();
|
||||||
|
void astroCalculations (QDateTime const&, bool adjust);
|
||||||
};
|
};
|
||||||
|
|
||||||
extern void getfile(QString fname, int ntrperiod);
|
extern void getfile(QString fname, int ntrperiod);
|
||||||
|
Loading…
Reference in New Issue
Block a user