From d8e9bd5e52f5eac85ce65ff969b61c08713bd1c2 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Fri, 1 Sep 2017 22:22:20 +0000 Subject: [PATCH] Improved message generation for type 2 calls in contest mode These attempt to ensure that a prefix is logged by the QSO partner even if the compound call holder user Tx3 to tail-end a QSO. The type 2 message generation options are largely overridden in contest mode as only a few options make sense. Key is that Tx1 may use only the base call when calling split is necessary, this requires that both Tx3 and Tx4 have the full compound call otherwise the QSO partner will never see the full call until it is possibly too late i.e. post logging. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@8065 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- mainwindow.cpp | 35 ++++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/mainwindow.cpp b/mainwindow.cpp index 890a1b845..530cfb118 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -4088,10 +4088,10 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) t=hisBase + " " + my_callsign; msgtype(t, ui->tx1); } else { + t = "DE " + my_callsign + " "; switch (m_config.type_2_msg_gen ()) { case Configuration::type_2_msg_1_full: - t="DE " + my_callsign + " "; msgtype(t + my_grid, ui->tx1); if (!eme_short_codes) { if ((m_mode=="MSK144" || m_mode=="FT8") @@ -4108,25 +4108,34 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) break; case Configuration::type_2_msg_3_full: - t = t00 + my_grid; - msgtype(t, ui->tx1); - t="DE " + my_callsign + " R" + rpt; - msgtype(t, ui->tx3); + if ((m_mode=="MSK144" || m_mode=="FT8") + && m_config.contestMode()) { + msgtype(t + "R " + my_grid, ui->tx3); + msgtype(t + "RRR", ui->tx4); + } + else { + msgtype(t00 + my_grid, ui->tx1); + msgtype(t + "R" + rpt, ui->tx3); + } if (!eme_short_codes && ((m_mode != "JT4" && m_mode != "QRA64") || !m_bShMsgs)) { - t="DE " + my_callsign + " 73"; - msgtype(t, ui->tx5->lineEdit ()); + msgtype(t + "73", ui->tx5->lineEdit ()); } break; case Configuration::type_2_msg_5_only: - t = t00 + my_grid; - msgtype(t, ui->tx1); + msgtype(t00 + my_grid, ui->tx1); if (!eme_short_codes) { - t=t0 + "R" + rpt; - msgtype(t, ui->tx3); + if ((m_mode=="MSK144" || m_mode=="FT8") + && m_config.contestMode()) { + msgtype(t + "R " + my_grid, ui->tx3); + msgtype(t + "RRR", ui->tx4); + } + else { + t=t0 + "R" + rpt; + msgtype(t, ui->tx3); + } } - t="DE " + my_callsign + " 73"; - msgtype(t, ui->tx5->lineEdit ()); + msgtype(t + "73", ui->tx5->lineEdit ()); break; } }