diff --git a/widgets/displaytext.cpp b/widgets/displaytext.cpp index 2aeb36e70..c00a30961 100644 --- a/widgets/displaytext.cpp +++ b/widgets/displaytext.cpp @@ -506,11 +506,11 @@ void DisplayText::displayDecodedText(DecodedText const& decodedText, QString con void DisplayText::displayTransmittedText(QString text, QString modeTx, qint32 txFreq, - bool bFastMode, double TRperiod) + bool bFastMode, double TRperiod,bool bSuperfox) { QString t1=" @ "; if(modeTx=="FT4") t1=" + "; - if(modeTx=="FT8") t1=" ~ "; + if(modeTx.contains("FT8")) t1=" ~ "; if(modeTx=="JT4") t1=" $ "; if(modeTx=="Q65") t1=" : "; if(modeTx=="JT65") t1=" # "; @@ -534,7 +534,18 @@ void DisplayText::displayTransmittedText(QString text, QString modeTx, qint32 tx QColor fg; highlight_types types {Highlight::Tx}; set_colours (m_config, &bg, &fg, types); - insertText (t, bg, fg); + if(bSuperfox and t.contains(";")) { + int i0=t.indexOf(";"); + int i1=t.indexOf("<"); + int i2=t.indexOf(">"); + QString foxcall=t.mid(i1+1,i2-i1-1); + t2=t.left(i0) + " " + foxcall; + QString t3=t.left(24) + t.mid(i0+2,-1).remove("<").remove(">"); + insertText (t2, bg, fg); + insertText (t3, bg, fg); + } else { + insertText (t, bg, fg); + } } void DisplayText::displayQSY(QString text) diff --git a/widgets/displaytext.h b/widgets/displaytext.h index 9ceeeeffd..c75d7a73c 100644 --- a/widgets/displaytext.h +++ b/widgets/displaytext.h @@ -30,8 +30,10 @@ public: void displayDecodedText(DecodedText const& decodedText, QString const& myCall, QString const& mode, bool displayDXCCEntity, LogBook const& logBook, QString const& currentBand=QString {}, bool ppfx=false, bool bCQonly=false, - bool haveFSpread = false, float fSpread = 0.0, bool bDisplayPoints=false, int points=-99); - void displayTransmittedText(QString text, QString modeTx, qint32 txFreq, bool bFastMode, double TRperiod); + bool haveFSpread = false, float fSpread = 0.0, bool bDisplayPoints=false, + int points=-99); + void displayTransmittedText(QString text, QString modeTx, qint32 txFreq, bool bFastMode, + double TRperiod, bool bSuperfox); void displayQSY(QString text); void displayHoundToBeCalled(QString t, bool bAtTop=false, QColor bg = QColor {}, QColor fg = QColor {}); void new_period (); diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index a85ae7bc2..f8b5d664d 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -4985,7 +4985,7 @@ void MainWindow::guiUpdate() write_all("Tx",m_currentMessage); if (m_config.TX_messages () and m_mode!="Echo") { ui->decodedTextBrowser2->displayTransmittedText(m_currentMessage.trimmed(),m_mode, - ui->TxFreqSpinBox->value(),m_bFastMode,m_TRperiod); + ui->TxFreqSpinBox->value(),m_bFastMode,m_TRperiod,m_config.superFox()); } } @@ -5088,7 +5088,7 @@ void MainWindow::guiUpdate() if (m_config.TX_messages () && !m_tune && SpecOp::FOX!=m_specOp) { ui->decodedTextBrowser2->displayTransmittedText(current_message.trimmed(), - m_mode,ui->TxFreqSpinBox->value(),m_bFastMode,m_TRperiod); + m_mode,ui->TxFreqSpinBox->value(),m_bFastMode,m_TRperiod,m_config.superFox()); } } @@ -10541,10 +10541,10 @@ void MainWindow::foxGenWaveform(int i,QString fm) int nfreq=ui->TxFreqSpinBox->value()+60*i; if(m_config.superFox()) nfreq=750; ui->decodedTextBrowser2->displayTransmittedText(fm.trimmed(), txModeArg, - nfreq,m_bFastMode,m_TRperiod); + nfreq,m_bFastMode,m_TRperiod,m_config.superFox()); if (SpecOp::FOX==m_specOp && m_config.superFox() && ui->cbSendMsg->isChecked()) ui->decodedTextBrowser2->displayTransmittedText(m_freeTextMsg0, txModeArg, - nfreq,m_bFastMode,m_TRperiod); + nfreq,m_bFastMode,m_TRperiod,m_config.superFox()); foxcom_.i3bit[i]=0; if(fm.indexOf("<")>0) foxcom_.i3bit[i]=1; strncpy(&foxcom_.cmsg[i][0],fm.toLatin1(),40); //Copy this message into cmsg[i]