diff --git a/Configuration.cpp b/Configuration.cpp
index cce8db23c..5526a1ec4 100644
--- a/Configuration.cpp
+++ b/Configuration.cpp
@@ -609,6 +609,7 @@ private:
bool miles_;
bool quick_call_;
bool disable_TX_on_73_;
+ bool force_call_1st_;
bool alternate_bindings_;
int watchdog_;
bool TX_messages_;
@@ -705,6 +706,7 @@ bool Configuration::clear_DX () const {return m_->clear_DX_;}
bool Configuration::miles () const {return m_->miles_;}
bool Configuration::quick_call () const {return m_->quick_call_;}
bool Configuration::disable_TX_on_73 () const {return m_->disable_TX_on_73_;}
+bool Configuration::force_call_1st() const {return m_->force_call_1st_;}
bool Configuration::alternate_bindings() const {return m_->alternate_bindings_;}
int Configuration::watchdog () const {return m_->watchdog_;}
bool Configuration::TX_messages () const {return m_->TX_messages_;}
@@ -1242,6 +1244,7 @@ void Configuration::impl::initialize_models ()
ui_->miles_check_box->setChecked (miles_);
ui_->quick_call_check_box->setChecked (quick_call_);
ui_->disable_TX_on_73_check_box->setChecked (disable_TX_on_73_);
+ ui_->force_call_1st_check_box->setChecked (force_call_1st_);
ui_->alternate_bindings_check_box->setChecked (alternate_bindings_);
ui_->tx_watchdog_spin_box->setValue (watchdog_);
ui_->TX_messages_check_box->setChecked (TX_messages_);
@@ -1496,6 +1499,7 @@ void Configuration::impl::read_settings ()
miles_ = settings_->value ("Miles", false).toBool ();
quick_call_ = settings_->value ("QuickCall", false).toBool ();
disable_TX_on_73_ = settings_->value ("73TxDisable", false).toBool ();
+ force_call_1st_ = settings_->value ("ForceCallFirst", false).toBool ();
alternate_bindings_ = settings_->value ("AlternateBindings", false).toBool ();
watchdog_ = settings_->value ("TxWatchdog", 6).toInt ();
TX_messages_ = settings_->value ("Tx2QSO", true).toBool ();
@@ -1598,6 +1602,7 @@ void Configuration::impl::write_settings ()
settings_->setValue ("Miles", miles_);
settings_->setValue ("QuickCall", quick_call_);
settings_->setValue ("73TxDisable", disable_TX_on_73_);
+ settings_->setValue ("ForceCallFirst", force_call_1st_);
settings_->setValue ("AlternateBindings", alternate_bindings_);
settings_->setValue ("TxWatchdog", watchdog_);
settings_->setValue ("Tx2QSO", TX_messages_);
@@ -2042,6 +2047,7 @@ void Configuration::impl::accept ()
miles_ = ui_->miles_check_box->isChecked ();
quick_call_ = ui_->quick_call_check_box->isChecked ();
disable_TX_on_73_ = ui_->disable_TX_on_73_check_box->isChecked ();
+ force_call_1st_ = ui_->force_call_1st_check_box->isChecked ();
alternate_bindings_ = ui_->alternate_bindings_check_box->isChecked ();
watchdog_ = ui_->tx_watchdog_spin_box->value ();
TX_messages_ = ui_->TX_messages_check_box->isChecked ();
diff --git a/Configuration.hpp b/Configuration.hpp
index 991e126fb..0ed7a4057 100644
--- a/Configuration.hpp
+++ b/Configuration.hpp
@@ -127,6 +127,7 @@ public:
bool miles () const;
bool quick_call () const;
bool disable_TX_on_73 () const;
+ bool force_call_1st() const;
bool alternate_bindings() const;
int watchdog () const;
bool TX_messages () const;
diff --git a/Configuration.ui b/Configuration.ui
index 9701fb633..9e36e7ee1 100644
--- a/Configuration.ui
+++ b/Configuration.ui
@@ -301,7 +301,14 @@
Behavior
- -
+
-
+
+
+ Decode after EME delay
+
+
+
+ -
-
@@ -347,10 +354,27 @@
- -
-
+
-
+
- Decode after EME delay
+ Enable VHF/UHF/Microwave features
+
+
+
+ -
+
+
+ Single decode
+
+
+
+ -
+
+
+ <html><head/><body><p>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.</p></body></html>
+
+
+ Allow Tx frequency changes while transmitting
@@ -367,31 +391,35 @@
- -
-
-
- Single decode
-
-
-
- -
-
-
- Enable VHF/UHF/Microwave features
-
-
-
- -
-
+
-
+
- <html><head/><body><p>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.</p></body></html>
+ <html><head/><body><p>Check this if you wish to automatically return to the last monitored frequency when monitor is enabled, leave it unchecked if you wish to have the current rig frequency maintained.</p></body></html>
- Allow Tx frequency changes while transmitting
+ Monitor returns to last used frequency
- -
+
-
+
+
+ Alternate F1-F6 bindings
+
+
+
+ -
+
+
+ Turns off automatic transmissions after sending a 73 or any other free
+text message.
+
+
+ Di&sable Tx after sending 73
+
+
+
+ -
-
@@ -444,34 +472,6 @@ quiet period when decoding is done.
- -
-
-
- <html><head/><body><p>Check this if you wish to automatically return to the last monitored frequency when monitor is enabled, leave it unchecked if you wish to have the current rig frequency maintained.</p></body></html>
-
-
- Monitor returns to last used frequency
-
-
-
- -
-
-
- Alternate F1-F6 bindings
-
-
-
- -
-
-
- Turns off automatic transmissions after sending a 73 or any other free
-text message.
-
-
- Di&sable Tx after sending 73
-
-
-
-
@@ -482,6 +482,13 @@ text message.
+ -
+
+
+ Calling CQ forces Call 1st
+
+
+
@@ -3078,13 +3085,13 @@ Right click for insert and delete options.
+
+
-
-
-
-
+
+
diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp
index 9b8a7b26a..23fa97772 100644
--- a/widgets/mainwindow.cpp
+++ b/widgets/mainwindow.cpp
@@ -3947,7 +3947,7 @@ void MainWindow::guiUpdate()
//Once per second:
if(nsec != m_sec0) {
-// qDebug() << "cc onesec" << m_bBestSPArmed;
+// qDebug() << "onesec" << m_config.force_call_1st();
// if((!m_msgAvgWidget or (m_msgAvgWidget and !m_msgAvgWidget->isVisible()))
// and (SpecOp::NONE < m_config.special_op_id()) and (SpecOp::HOUND > m_config.special_op_id())) on_actionFox_Log_triggered();
if(m_freqNominal!=0 and m_freqNominal<50000000 and m_config.enable_VHF_features()) {
@@ -4076,6 +4076,7 @@ void MainWindow::startTx2()
t=ui->tx6->text();
if(t.mid(0,1)=="#") snr=t.mid(1,5).toDouble();
if(snr>0.0 or snr < -50.0) snr=99.0;
+ if((m_ntx==6 or m_ntx==7) and m_config.force_call_1st()) ui->cbFirst->setChecked(true);
transmit (snr);
ui->signal_meter_widget->setValue(0,0);
if(m_mode=="Echo" and !m_tune) m_bTransmittedEcho=true;