Allow configuration for rig frequency changes during transmit

This commit is contained in:
Jordan Sherer 2018-09-11 10:52:07 -04:00
parent e9aa4203b5
commit df0b06ccb7
4 changed files with 24 additions and 28 deletions

View File

@ -597,7 +597,7 @@ private:
double degrade_; double degrade_;
double txDelay_; double txDelay_;
bool id_after_73_; bool id_after_73_;
bool tx_QSY_allowed_; bool tx_qsy_allowed_;
bool spot_to_reporting_networks_; bool spot_to_reporting_networks_;
bool transmit_directed_; bool transmit_directed_;
bool autoreply_off_at_startup_; bool autoreply_off_at_startup_;
@ -709,7 +709,7 @@ double Configuration::degrade() const {return m_->degrade_;}
double Configuration::txDelay() const {return m_->txDelay_;} double Configuration::txDelay() const {return m_->txDelay_;}
qint32 Configuration::RxBandwidth() const {return m_->RxBandwidth_;} qint32 Configuration::RxBandwidth() const {return m_->RxBandwidth_;}
bool Configuration::id_after_73 () const {return m_->id_after_73_;} bool Configuration::id_after_73 () const {return m_->id_after_73_;}
bool Configuration::tx_QSY_allowed () const {return m_->tx_QSY_allowed_;} bool Configuration::tx_qsy_allowed () const {return m_->tx_qsy_allowed_;}
bool Configuration::spot_to_reporting_networks () const bool Configuration::spot_to_reporting_networks () const
{ {
// rig must be open and working to spot externally // rig must be open and working to spot externally
@ -1291,7 +1291,7 @@ void Configuration::impl::initialize_models ()
ui_->sound_dm_path_display_label->setText(sound_dm_path_); ui_->sound_dm_path_display_label->setText(sound_dm_path_);
ui_->sound_am_path_display_label->setText(sound_am_path_); ui_->sound_am_path_display_label->setText(sound_am_path_);
ui_->CW_id_after_73_check_box->setChecked (id_after_73_); ui_->CW_id_after_73_check_box->setChecked (id_after_73_);
ui_->tx_QSY_check_box->setChecked (tx_QSY_allowed_); ui_->tx_qsy_check_box->setChecked (tx_qsy_allowed_);
ui_->psk_reporter_check_box->setChecked (spot_to_reporting_networks_); ui_->psk_reporter_check_box->setChecked (spot_to_reporting_networks_);
ui_->transmit_directed_check_box->setChecked(transmit_directed_); ui_->transmit_directed_check_box->setChecked(transmit_directed_);
ui_->autoreply_off_check_box->setChecked (autoreply_off_at_startup_); ui_->autoreply_off_check_box->setChecked (autoreply_off_at_startup_);
@ -1530,7 +1530,7 @@ void Configuration::impl::read_settings ()
monitor_last_used_ = settings_->value ("MonitorLastUsed", false).toBool (); monitor_last_used_ = settings_->value ("MonitorLastUsed", false).toBool ();
spot_to_reporting_networks_ = settings_->value ("PSKReporter", true).toBool (); spot_to_reporting_networks_ = settings_->value ("PSKReporter", true).toBool ();
id_after_73_ = settings_->value ("After73", false).toBool (); id_after_73_ = settings_->value ("After73", false).toBool ();
tx_QSY_allowed_ = settings_->value ("TxQSYAllowed", false).toBool (); tx_qsy_allowed_ = settings_->value ("TxQSYAllowed", false).toBool ();
use_dynamic_info_ = settings_->value ("AutoGrid", false).toBool (); use_dynamic_info_ = settings_->value ("AutoGrid", false).toBool ();
auto loadedMacros = settings_->value ("Macros", QStringList {"TNX 73 GL"}).toStringList(); auto loadedMacros = settings_->value ("Macros", QStringList {"TNX 73 GL"}).toStringList();
@ -1681,7 +1681,7 @@ void Configuration::impl::write_settings ()
settings_->setValue ("MonitorLastUsed", monitor_last_used_); settings_->setValue ("MonitorLastUsed", monitor_last_used_);
settings_->setValue ("PSKReporter", spot_to_reporting_networks_); settings_->setValue ("PSKReporter", spot_to_reporting_networks_);
settings_->setValue ("After73", id_after_73_); settings_->setValue ("After73", id_after_73_);
settings_->setValue ("TxQSYAllowed", tx_QSY_allowed_); settings_->setValue ("TxQSYAllowed", tx_qsy_allowed_);
settings_->setValue ("Macros", macros_.stringList ()); settings_->setValue ("Macros", macros_.stringList ());
settings_->setValue (versionedFrequenciesSettingsKey, QVariant::fromValue (frequencies_.frequency_list ())); settings_->setValue (versionedFrequenciesSettingsKey, QVariant::fromValue (frequencies_.frequency_list ()));
settings_->setValue ("stations", QVariant::fromValue (stations_.station_list ())); settings_->setValue ("stations", QVariant::fromValue (stations_.station_list ()));
@ -2120,7 +2120,7 @@ void Configuration::impl::accept ()
degrade_ = ui_->sbDegrade->value (); degrade_ = ui_->sbDegrade->value ();
RxBandwidth_ = ui_->sbBandwidth->value (); RxBandwidth_ = ui_->sbBandwidth->value ();
id_after_73_ = ui_->CW_id_after_73_check_box->isChecked (); id_after_73_ = ui_->CW_id_after_73_check_box->isChecked ();
tx_QSY_allowed_ = ui_->tx_QSY_check_box->isChecked (); tx_qsy_allowed_ = ui_->tx_qsy_check_box->isChecked ();
transmit_directed_ = ui_->transmit_directed_check_box->isChecked(); transmit_directed_ = ui_->transmit_directed_check_box->isChecked();
autoreply_off_at_startup_ = ui_->autoreply_off_check_box->isChecked (); autoreply_off_at_startup_ = ui_->autoreply_off_check_box->isChecked ();
relay_disabled_ = ui_->relay_disabled_check_box->isChecked(); relay_disabled_ = ui_->relay_disabled_check_box->isChecked();

View File

@ -113,7 +113,7 @@ public:
double degrade() const; double degrade() const;
double txDelay() const; double txDelay() const;
bool id_after_73 () const; bool id_after_73 () const;
bool tx_QSY_allowed () const; bool tx_qsy_allowed () const;
bool spot_to_reporting_networks () const; bool spot_to_reporting_networks () const;
void set_spot_to_reporting_networks (bool); void set_spot_to_reporting_networks (bool);
bool transmit_directed() const; bool transmit_directed() const;

View File

@ -7,7 +7,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>692</width> <width>692</width>
<height>706</height> <height>735</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
@ -390,13 +390,17 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QCheckBox" name="tx_QSY_check_box"> <widget class="QCheckBox" name="transmit_directed_check_box">
<property name="text">
<string>Immediately transmit directed responses from the menu</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="tx_qsy_check_box">
<property name="enabled"> <property name="enabled">
<bool>true</bool> <bool>true</bool>
</property> </property>
<property name="visible">
<bool>false</bool>
</property>
<property name="toolTip"> <property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Some rigs are not able to process CAT commands while transmitting. This means that if you are operating in split mode you may have to uncheck this option.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Some rigs are not able to process CAT commands while transmitting. This means that if you are operating in split mode you may have to uncheck this option.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property> </property>
@ -405,13 +409,6 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QCheckBox" name="transmit_directed_check_box">
<property name="text">
<string>Immediately transmit directed responses from the menu</string>
</property>
</widget>
</item>
<item> <item>
<widget class="QCheckBox" name="single_decode_check_box"> <widget class="QCheckBox" name="single_decode_check_box">
<property name="enabled"> <property name="enabled">
@ -3241,7 +3238,6 @@ soundcard changes</string>
<tabstop>tx_watchdog_spin_box</tabstop> <tabstop>tx_watchdog_spin_box</tabstop>
<tabstop>CW_id_after_73_check_box</tabstop> <tabstop>CW_id_after_73_check_box</tabstop>
<tabstop>enable_VHF_features_check_box</tabstop> <tabstop>enable_VHF_features_check_box</tabstop>
<tabstop>tx_QSY_check_box</tabstop>
<tabstop>single_decode_check_box</tabstop> <tabstop>single_decode_check_box</tabstop>
<tabstop>decode_at_52s_check_box</tabstop> <tabstop>decode_at_52s_check_box</tabstop>
<tabstop>CW_id_interval_spin_box</tabstop> <tabstop>CW_id_interval_spin_box</tabstop>
@ -3372,12 +3368,12 @@ soundcard changes</string>
</connection> </connection>
</connections> </connections>
<buttongroups> <buttongroups>
<buttongroup name="CAT_handshake_button_group"/>
<buttongroup name="CAT_stop_bits_button_group"/>
<buttongroup name="TX_audio_source_button_group"/> <buttongroup name="TX_audio_source_button_group"/>
<buttongroup name="PTT_method_button_group"/> <buttongroup name="PTT_method_button_group"/>
<buttongroup name="split_mode_button_group"/> <buttongroup name="split_mode_button_group"/>
<buttongroup name="CAT_data_bits_button_group"/> <buttongroup name="CAT_data_bits_button_group"/>
<buttongroup name="CAT_stop_bits_button_group"/>
<buttongroup name="TX_mode_button_group"/> <buttongroup name="TX_mode_button_group"/>
<buttongroup name="CAT_handshake_button_group"/>
</buttongroups> </buttongroups>
</ui> </ui>

View File

@ -8137,7 +8137,7 @@ void MainWindow::on_pbTxMode_clicked()
void MainWindow::setXIT(int n, Frequency base) void MainWindow::setXIT(int n, Frequency base)
{ {
if (m_transmitting && !m_config.tx_QSY_allowed ()) return; if (m_transmitting && !m_config.tx_qsy_allowed ()) return;
// If "CQ nnn ..." feature is active, set the proper Tx frequency // If "CQ nnn ..." feature is active, set the proper Tx frequency
if(m_config.split_mode () && ui->cbCQTx->isEnabled () && ui->cbCQTx->isVisible () && if(m_config.split_mode () && ui->cbCQTx->isEnabled () && ui->cbCQTx->isVisible () &&
ui->cbCQTx->isChecked()) ui->cbCQTx->isChecked())
@ -8200,7 +8200,7 @@ bool MainWindow::tryRestoreFreqOffset(){
void MainWindow::setFreq4(int rxFreq, int txFreq) void MainWindow::setFreq4(int rxFreq, int txFreq)
{ {
// don't allow QSY if we've already queued a transmission // don't allow QSY if we've already queued a transmission
if(isMessageQueuedForTransmit()){ if(isMessageQueuedForTransmit() && !m_config.tx_qsy_allowed()){
return; return;
} }
@ -8600,7 +8600,7 @@ void MainWindow::transmitDisplay (bool transmitting)
m_btxok=true; m_btxok=true;
} }
auto QSY_allowed = !transmitting or m_config.tx_QSY_allowed () or auto QSY_allowed = !transmitting or m_config.tx_qsy_allowed () or
!m_config.split_mode (); !m_config.split_mode ();
if (ui->cbHoldTxFreq->isChecked ()) { if (ui->cbHoldTxFreq->isChecked ()) {
ui->RxFreqSpinBox->setEnabled (QSY_allowed); ui->RxFreqSpinBox->setEnabled (QSY_allowed);
@ -10616,9 +10616,9 @@ void MainWindow::astroUpdate ()
m_config.my_grid(), m_hisGrid, m_config.my_grid(), m_hisGrid,
m_freqNominal, m_freqNominal,
"Echo" == m_mode, m_transmitting, "Echo" == m_mode, m_transmitting,
!m_config.tx_QSY_allowed (), m_TRperiod); !m_config.tx_qsy_allowed (), m_TRperiod);
// no Doppler correction in Tx if rig can't do it // no Doppler correction in Tx if rig can't do it
if (m_transmitting && !m_config.tx_QSY_allowed ()) return; if (m_transmitting && !m_config.tx_qsy_allowed ()) return;
if (!m_astroWidget->doppler_tracking ()) return; if (!m_astroWidget->doppler_tracking ()) return;
if ((m_monitoring || m_transmitting) if ((m_monitoring || m_transmitting)
// no Doppler correction below 6m // no Doppler correction below 6m
@ -10680,7 +10680,7 @@ void MainWindow::setRig (Frequency f)
&& m_frequency_list_fcal_iter != m_config.frequencies ()->end ()) { && m_frequency_list_fcal_iter != m_config.frequencies ()->end ()) {
m_freqNominal = m_frequency_list_fcal_iter->frequency_ - ui->RxFreqSpinBox->value (); m_freqNominal = m_frequency_list_fcal_iter->frequency_ - ui->RxFreqSpinBox->value ();
} }
if(m_transmitting && !m_config.tx_QSY_allowed ()) return; if(m_transmitting && !m_config.tx_qsy_allowed ()) return;
if ((m_monitoring || m_transmitting) && m_config.transceiver_online ()) if ((m_monitoring || m_transmitting) && m_config.transceiver_online ())
{ {
if (m_transmitting && m_config.split_mode ()) if (m_transmitting && m_config.split_mode ())