Fix setting of TxFirst after double-click on callsign.

Adjust displayed S/N values for shorthands and nfast=2 modes.
(A better scheme can probably be found.)


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@2584 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2012-09-14 15:04:38 +00:00
parent 8782ae2b3c
commit 9d3a43c8f3
2 changed files with 30 additions and 10 deletions

View File

@ -270,10 +270,16 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, &
f0=mhz+0.001*nkHz f0=mhz+0.001*nkHz
ndf=nint(1000.0*(freq-foffset-(nkHz+nfshift))) ndf=nint(1000.0*(freq-foffset-(nkHz+nfshift)))
nsync1=sync1 nsync1=sync1
nsync2=nint(10.0*log10(sync2)) - 40 !### empirical ###
if(nfast.eq.2) nsync2=nsync2 + 7 s2db=10.0*log10(sync2) - 40 !### empirical ###
nsync2=nint(s2db)
if(nfast.eq.2) nsync2=nint(s2db + 6.5)
if(decoded(1:4).eq.'RO ' .or. decoded(1:4).eq.'RRR ' .or. & if(decoded(1:4).eq.'RO ' .or. decoded(1:4).eq.'RRR ' .or. &
decoded(1:4).eq.'73 ') nsync2=nsync2-6 decoded(1:4).eq.'73 ') then
if(nfast.eq.1) nsync2=nint(1.33*s2db + 2.0)
if(nfast.eq.2) nsync2=nint(1.33*s2db + 2.7)
endif
nwrite=nwrite+1 nwrite=nwrite+1
if(nxant.ne.0) then if(nxant.ne.0) then
npol=npol-45 npol=npol-45
@ -393,10 +399,16 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, &
ndf1=nint(a(2)) ndf1=nint(a(2))
ndf2=nint(a(3)) ndf2=nint(a(3))
nsync1=sync1 nsync1=sync1
nsync2=nint(10.0*log10(sync2)) - 40 !### empirical ###
if(nfast.eq.2) nsync2=nsync2 + 7 s2db=10.0*log10(sync2) - 40 !### empirical ###
nsync2=nint(s2db)
if(nfast.eq.2) nsync2=nint(s2db + 6.5)
if(decoded(1:4).eq.'RO ' .or. decoded(1:4).eq.'RRR ' .or. & if(decoded(1:4).eq.'RO ' .or. decoded(1:4).eq.'RRR ' .or. &
decoded(1:4).eq.'73 ') nsync2=nsync2-6 decoded(1:4).eq.'73 ') then
if(nfast.eq.1) nsync2=nint(1.33*s2db + 2.0)
if(nfast.eq.2) nsync2=nint(1.33*s2db + 2.7)
endif
if(nxant.ne.0) then if(nxant.ne.0) then
npol=npol-45 npol=npol-45
if(npol.lt.0) npol=npol+180 if(npol.lt.0) npol=npol+180

View File

@ -1627,8 +1627,12 @@ void MainWindow::doubleClickOnCall(QString hiscall, bool ctrl)
QString t1 = t.mid(0,i2); //contents up to text cursor QString t1 = t.mid(0,i2); //contents up to text cursor
int i1=t1.lastIndexOf("\n") + 1; int i1=t1.lastIndexOf("\n") + 1;
QString t2 = t1.mid(i1,i2-i1); //selected line QString t2 = t1.mid(i1,i2-i1); //selected line
int n = 60*t2.mid(13,2).toInt() + t2.mid(15,2).toInt(); if(m_nfast==1) {
m_txFirst = ((n%2) == 1); int n = 60*t2.mid(13,2).toInt() + t2.mid(15,2).toInt();
m_txFirst = ((n%2) == 1);
} else {
m_txFirst = (t2.mid(17,2).toInt()==30);
}
ui->txFirstCheckBox->setChecked(m_txFirst); ui->txFirstCheckBox->setChecked(m_txFirst);
QString rpt=""; QString rpt="";
if(ctrl) rpt=t2.mid(23,3); if(ctrl) rpt=t2.mid(23,3);
@ -1649,8 +1653,12 @@ void MainWindow::doubleClickOnMessages(QString hiscall, QString t2)
msgBox("Possible dupe: " + hiscall + " already in log."); msgBox("Possible dupe: " + hiscall + " already in log.");
} }
ui->dxCallEntry->setText(hiscall); ui->dxCallEntry->setText(hiscall);
int n = 60*t2.mid(13,2).toInt() + t2.mid(15,2).toInt(); if(m_nfast==1) {
m_txFirst = ((n%2) == 1); int n = 60*t2.mid(13,2).toInt() + t2.mid(15,2).toInt();
m_txFirst = ((n%2) == 1);
} else {
m_txFirst = (t2.mid(17,2).toInt()==30);
}
ui->txFirstCheckBox->setChecked(m_txFirst); ui->txFirstCheckBox->setChecked(m_txFirst);
lookup(); lookup();
genStdMsgs(""); genStdMsgs("");