diff --git a/lib/77bit/packjt77.f90 b/lib/77bit/packjt77.f90 index 5729cee06..47cd3b6bb 100644 --- a/lib/77bit/packjt77.f90 +++ b/lib/77bit/packjt77.f90 @@ -474,13 +474,17 @@ subroutine unpack77(c77,nrx,msg,unpk77_success) i=index(call_1,' ') if(i.ge.4 .and. ipa.eq.1 .and. i3.eq.1) call_1(i:i+1)='/R' if(i.ge.4 .and. ipa.eq.1 .and. i3.eq.2) call_1(i:i+1)='/P' - if(i.ge.4) call add_call_to_recent_calls(call_1) + if(i.ge.4) call add_call_to_recent_calls(call_1) endif if(index(call_2,'<').le.0) then i=index(call_2,' ') if(i.ge.4 .and. ipb.eq.1 .and. i3.eq.1) call_2(i:i+1)='/R' if(i.ge.4 .and. ipb.eq.1 .and. i3.eq.2) call_2(i:i+1)='/P' - if(i.ge.4) call add_call_to_recent_calls(call_2) + if(i.ge.4) then + call add_call_to_recent_calls(call_2) +! only hash the "from" call + call save_hash_call(call_2,ndum10,ndum12,ndum22) + endif endif if(igrid4.le.MAXGRID4) then call to_grid4(igrid4,grid4,unpkg4_success) @@ -560,6 +564,7 @@ subroutine unpack77(c77,nrx,msg,unpk77_success) call_1=call_3 call_2=adjustl(c11)//' ' call add_call_to_recent_calls(call_2) + call save_hash_call(call_2,ndum10,ndum12,ndum22) if(nrx.eq.1 .and. & dxcall13_set .and. mycall13_set .and. & call_2.eq.dxcall13 .and. & @@ -1540,7 +1545,7 @@ subroutine add_call_to_recent_calls(callsign) endif ! Make sure that callsign is hashed - call save_hash_call(callsign,n10,n12,n22) +! call save_hash_call(callsign,n10,n12,n22) ! commented out - do this in the calling routine: return end subroutine add_call_to_recent_calls diff --git a/logbook/logbook.cpp b/logbook/logbook.cpp index 411d6240c..2d4340299 100644 --- a/logbook/logbook.cpp +++ b/logbook/logbook.cpp @@ -101,7 +101,7 @@ QByteArray LogBook::QSOToADIF (QString const& hisCall, QString const& hisGrid, Q t += " " + band; t += " " + strDialFreq; t += " " + myCall; - t += " " + myGrid; + if(myGrid!="") t += " " + myGrid; if(txPower!="") t += " " + txPower; if(comments!="") t += " " + comments; if(name!="") t += " " + name; diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 639dc174a..ae8766572 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -2251,6 +2251,13 @@ void MainWindow::keyPressEvent (QKeyEvent * e) bool bAltF1F6=m_config.alternate_bindings(); switch(e->key()) { + case Qt::Key_A: + if(m_mode=="Q65" && e->modifiers() & Qt::AltModifier) { + m_EMECall.clear(); + qmapcom.ndecodes=0; + readWidebandDecodes(); + } + return; case Qt::Key_B: if(m_mode=="FT4" && e->modifiers() & Qt::AltModifier) { on_pbBestSP_clicked(); @@ -3259,6 +3266,7 @@ void MainWindow::on_actionKeyboard_shortcuts_triggered() Ctrl+Shift+F12 Move dial frequency up 1000 Hz Alt+1-6 Set now transmission to this number on Tab 1 Ctl+1-6 Set next transmission to this number on Tab 1 + Alt+A Clear Active Stations for QMAP Alt+B Toggle "Best S+P" status Alt+C Toggle "Call 1st" checkbox Alt+D Decode again at QSO frequency @@ -5515,7 +5523,24 @@ void MainWindow::doubleClickOnCall(Qt::KeyboardModifiers modifiers) } else { cursor=ui->decodedTextBrowser2->textCursor(); } - + DecodedText message {cursor.block().text().trimmed().left(61).remove("TU; ")}; + if(message.string().contains(";") && message.string().contains("<")) { + QVector Freq = {1840000,3573000,7074000,10136000,14074000,18100000,21074000,24915000,28074000,50313000,70154000,3575000,7047500,10140000,14080000,18104000,21140000,24919000,28180000,50318000}; + for(int i=0; i