diff --git a/mainwindow.cpp b/mainwindow.cpp index 49b757bd2..b66447301 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -118,6 +118,7 @@ int fast_jh; int fast_jh2; int narg[15]; QVector g_ColorTbl; +bool g_single_decode; namespace { @@ -672,6 +673,7 @@ MainWindow::MainWindow(bool multiple, QSettings * settings, QSharedMemory *shdme if(m_config.decode_at_52s()) m_hsymStop=179; } VHF_features_enabled(m_config.enable_VHF_features()); + g_single_decode=m_config.single_decode(); progressBar->setMaximum(m_TRperiod); m_modulator->setPeriod(m_TRperiod); // TODO - not thread safe @@ -1847,7 +1849,6 @@ void MainWindow::decode() //decode() if(m_config.EMEonly()) dec_data.params.nexp_decode += 16; if(m_config.single_decode()) dec_data.params.nexp_decode += 32; - strncpy(dec_data.params.datetime, m_dateTime.toLatin1(), 20); strncpy(dec_data.params.mycall, (m_config.my_callsign()+" ").toLatin1(),12); strncpy(dec_data.params.mygrid, (m_config.my_grid()+" ").toLatin1(),6); @@ -2566,6 +2567,7 @@ void MainWindow::guiUpdate() //Once per second: if(nsec != m_sec0) { + g_single_decode=m_config.single_decode(); if(m_auto and m_mode=="Echo" and m_bEchoTxOK) { progressBar->setMaximum(6); progressBar->setValue(int(m_s6)); diff --git a/plotter.cpp b/plotter.cpp index 264c9b748..d567fc119 100644 --- a/plotter.cpp +++ b/plotter.cpp @@ -2,7 +2,6 @@ #include #include #include "commons.h" - #include "moc_plotter.cpp" #define MAX_SCREENSIZE 2048 @@ -222,7 +221,7 @@ void CPlotter::DrawOverlay() //DrawOverlay() if(m_OverlayPixmap.isNull()) return; if(m_WaterfallPixmap.isNull()) return; int w = m_WaterfallPixmap.width(); - int x,y,x1,x2; + int x,y,x1,x2,x3,x4,x5; float pixperdiv; double df = m_binsPerPixel*m_fftBinWidth; @@ -342,7 +341,6 @@ void CPlotter::DrawOverlay() //DrawOverlay() if(m_nSubMode==2) bw=4*bw; } - QPen pen0(Qt::green, 3); //Mark Rx Freq with green painter0.setPen(pen0); if(m_mode=="WSPR-2") { //### WSPR-15 code needed here, too ### @@ -356,6 +354,14 @@ void CPlotter::DrawOverlay() //DrawOverlay() painter0.drawLine(x1,24,x1,30); painter0.drawLine(x1,28,x2,28); painter0.drawLine(x2,24,x2,30); + if(g_single_decode) { + x3=XfromFreq(m_rxFreq+22.0*bw/66.0); + painter0.drawLine(x3,24,x3,30); + x4=XfromFreq(m_rxFreq+32.0*bw/66.0); + painter0.drawLine(x4,24,x4,30); + x5=XfromFreq(m_rxFreq+42.0*bw/66.0); + painter0.drawLine(x5,24,x5,30); + } } if(m_mode=="JT9" or m_mode=="JT65" or m_mode=="JT9+JT65" or diff --git a/plotter.h b/plotter.h index c8a2c0e49..4d00bcf14 100644 --- a/plotter.h +++ b/plotter.h @@ -21,6 +21,8 @@ #define VERT_DIVS 7 //specify grid screen divisions #define HORZ_DIVS 20 +extern bool g_single_decode; + class CPlotter : public QFrame { Q_OBJECT;