Merge branch 'develop' into sfox3

This commit is contained in:
Joe Taylor 2024-02-28 13:59:55 -05:00
commit 51757d474b
3 changed files with 35 additions and 6 deletions

View File

@ -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

View File

@ -101,7 +101,7 @@ QByteArray LogBook::QSOToADIF (QString const& hisCall, QString const& hisGrid, Q
t += " <band:" + QString::number(band.size()) + ">" + band;
t += " <freq:" + QString::number(strDialFreq.size()) + ">" + strDialFreq;
t += " <station_callsign:" + QString::number(myCall.size()) + ">" + myCall;
t += " <my_gridsquare:" + QString::number(myGrid.size()) + ">" + myGrid;
if(myGrid!="") t += " <my_gridsquare:" + QString::number(myGrid.size()) + ">" + myGrid;
if(txPower!="") t += " <tx_pwr:" + QString::number(txPower.size()) + ">" + txPower;
if(comments!="") t += " <comment:" + QString::number(comments.size()) + ">" + comments;
if(name!="") t += " <name:" + QString::number(name.size()) + ">" + name;

View File

@ -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()
<tr><td><b>Ctrl+Shift+F12 </b></td><td>Move dial frequency up 1000 Hz</td></tr>
<tr><td><b>Alt+1-6 </b></td><td>Set now transmission to this number on Tab 1</td></tr>
<tr><td><b>Ctl+1-6 </b></td><td>Set next transmission to this number on Tab 1</td></tr>
<tr><td><b>Alt+A </b></td><td>Clear Active Stations for QMAP</td></tr>
<tr><td><b>Alt+B </b></td><td>Toggle "Best S+P" status</td></tr>
<tr><td><b>Alt+C </b></td><td>Toggle "Call 1st" checkbox</td></tr>
<tr><td><b>Alt+D </b></td><td>Decode again at QSO frequency</td></tr>
@ -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<qint32> 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<Freq.length()-1; i++) {
int kHzdiff=m_freqNominal - Freq[i];
if(qAbs(kHzdiff) < 3000 ) {
m_bTxTime=false;
if (m_auto) auto_tx_mode (false);
if (m_tune) stop_tuning();
// auto const& msg2 = tr("Double-clicking on combined messages\n"
// "not allowed on the standard FT8 sub-bands.");
// QTimer::singleShot (0, [=] { // don't block guiUpdate
// MessageBox::warning_message (this, tr ("Potential hash collision"), msg2);
// });
return;
}
}
}
if(modifiers==(Qt::ShiftModifier + Qt::ControlModifier + Qt::AltModifier)) {
//### What was the purpose of this ??? ###
cursor.setPosition(0);
@ -5530,7 +5555,6 @@ void MainWindow::doubleClickOnCall(Qt::KeyboardModifiers modifiers)
}
return;
}
DecodedText message {cursor.block().text().trimmed().left(61).remove("TU; ")};
m_bDoubleClicked = true;
processMessage (message, modifiers);
}