1. Oops, inadvertently I clobbered a Win32-only line while editing unix

code.  
2. Add a Setup option "Tx freq locked to Rx freq."  Needs testing!


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3318 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2013-05-28 19:34:18 +00:00
parent 9a424e0110
commit 8e56a3c2ef
6 changed files with 36 additions and 7 deletions

View File

@ -85,8 +85,7 @@ void DevSetup::initDlg()
#ifdef WIN32 #ifdef WIN32
// Needs work to compile for Linux // Needs work to compile for Linux
p1=(char*)""; p1=(char*)"";
p=strstr(pa_device_hostapi,"MME");Pa_GetHostApiInfo(pdi->hostApi)->name p=strstr(pa_device_hostapi,"MME");
if(p!=NULL) p1=(char*)"MME"; if(p!=NULL) p1=(char*)"MME";
p=strstr(pa_device_hostapi,"Direct"); p=strstr(pa_device_hostapi,"Direct");
if(p!=NULL) p1=(char*)"DirectX"; if(p!=NULL) p1=(char*)"DirectX";

View File

@ -1,4 +1,4 @@
//------------------------------------------------------------ MainWindow //------------------------------------------------------------- MainWindow
#include "mainwindow.h" #include "mainwindow.h"
#include "ui_mainwindow.h" #include "ui_mainwindow.h"
#include "devsetup.h" #include "devsetup.h"
@ -33,7 +33,7 @@ Rig* rig = NULL;
QTextEdit* pShortcuts; QTextEdit* pShortcuts;
QString rev="$Rev$"; QString rev="$Rev$";
QString Program_Title_Version=" WSJT-X v0.99, r" + rev.mid(6,4) + QString Program_Title_Version=" WSJT-X v1.0, r" + rev.mid(6,4) +
" by K1JT"; " by K1JT";
//-------------------------------------------------- MainWindow constructor //-------------------------------------------------- MainWindow constructor
@ -416,6 +416,7 @@ void MainWindow::writeSettings()
settings.setValue("LogQSOgeom",m_logQSOgeom); settings.setValue("LogQSOgeom",m_logQSOgeom);
settings.setValue("Polling",m_poll); settings.setValue("Polling",m_poll);
settings.setValue("OutBufSize",outBufSize); settings.setValue("OutBufSize",outBufSize);
settings.setValue("LockTxFreq",m_lockTxFreq);
settings.endGroup(); settings.endGroup();
} }
@ -527,6 +528,8 @@ void MainWindow::readSettings()
m_poll=settings.value("Polling",0).toInt(); m_poll=settings.value("Polling",0).toInt();
m_logQSOgeom=settings.value("LogQSOgeom",QRect(500,400,424,283)).toRect(); m_logQSOgeom=settings.value("LogQSOgeom",QRect(500,400,424,283)).toRect();
outBufSize=settings.value("OutBufSize",4096).toInt(); outBufSize=settings.value("OutBufSize",4096).toInt();
m_lockTxFreq=settings.value("LockTxFreq",false).toBool();
ui->actionLockTxFreq->setChecked(m_lockTxFreq);
settings.endGroup(); settings.endGroup();
if(!ui->actionLinrad->isChecked() && !ui->actionCuteSDR->isChecked() && if(!ui->actionLinrad->isChecked() && !ui->actionCuteSDR->isChecked() &&
@ -1248,7 +1251,7 @@ void MainWindow::decode() //decode()
jt9com_.nfb=g_pWideGraph->getFmax(); jt9com_.nfb=g_pWideGraph->getFmax();
jt9com_.ntol=3; jt9com_.ntol=3;
if(jt9com_.nutc < m_nutc0) m_RxLog |= 1; //Date and Time to all65.txt if(jt9com_.nutc < m_nutc0) m_RxLog |= 1; //Date and Time to all.txt
m_nutc0=jt9com_.nutc; m_nutc0=jt9com_.nutc;
jt9com_.nrxlog=m_RxLog; jt9com_.nrxlog=m_RxLog;
jt9com_.nfsample=12000; jt9com_.nfsample=12000;
@ -1943,8 +1946,10 @@ void MainWindow::doubleClickOnCall(bool shift, bool ctrl)
int nfreq=int(t4.at(3).toFloat()); int nfreq=int(t4.at(3).toFloat());
g_pWideGraph->setQSOfreq(nfreq); //Set Rx freq g_pWideGraph->setQSOfreq(nfreq); //Set Rx freq
QString firstcall=t4.at(4); QString firstcall=t4.at(4);
//Don't change freqs if a station is calling me, unless CTRL is held down // Don't change Tx freq if a station is calling me, unless m_lockTxFreq
if(firstcall!=m_myCall or ctrl) ui->TxFreqSpinBox->setValue(nfreq); // is true or CTRL is held down or
if((firstcall!=m_myCall) or m_lockTxFreq or ctrl)
ui->TxFreqSpinBox->setValue(nfreq);
QString hiscall=t4.at(5); QString hiscall=t4.at(5);
QString hisgrid=""; QString hisgrid="";
if(t4.length()>=7) if(t4.length()>=7)
@ -2863,3 +2868,9 @@ void MainWindow::on_readFreq_clicked()
if(ndiff!=0) dialFreqChanged2(fMHz); if(ndiff!=0) dialFreqChanged2(fMHz);
} }
void MainWindow::on_actionLockTxFreq_triggered(bool checked)
{
m_lockTxFreq=checked;
g_pWideGraph->m_lockTxFreq=checked;
}

View File

@ -158,6 +158,8 @@ private slots:
void on_readFreq_clicked(); void on_readFreq_clicked();
void on_actionLockTxFreq_triggered(bool checked);
private: private:
Ui::MainWindow *ui; Ui::MainWindow *ui;
@ -255,6 +257,7 @@ private:
bool m_bDTRoff; bool m_bDTRoff;
bool m_pttData; bool m_pttData;
bool m_dontReadFreq; bool m_dontReadFreq;
bool m_lockTxFreq;
char m_decoded[80]; char m_decoded[80];

View File

@ -2271,6 +2271,7 @@ p, li { white-space: pre-wrap; }
<addaction name="action_73TxDisable"/> <addaction name="action_73TxDisable"/>
<addaction name="actionRunaway_Tx_watchdog"/> <addaction name="actionRunaway_Tx_watchdog"/>
<addaction name="actionTx2QSO"/> <addaction name="actionTx2QSO"/>
<addaction name="actionLockTxFreq"/>
<addaction name="separator"/> <addaction name="separator"/>
<addaction name="menuAdvanced"/> <addaction name="menuAdvanced"/>
</widget> </widget>
@ -2848,6 +2849,19 @@ p, li { white-space: pre-wrap; }
<string>Allow multiple instances</string> <string>Allow multiple instances</string>
</property> </property>
</action> </action>
<action name="actionTx_frequency_always_follows_Rx_frequency">
<property name="text">
<string>Tx frequency always follows Rx frequency</string>
</property>
</action>
<action name="actionLockTxFreq">
<property name="checkable">
<bool>true</bool>
</property>
<property name="text">
<string>Tx freq locked to Rx freq</string>
</property>
</action>
</widget> </widget>
<layoutdefault spacing="6" margin="11"/> <layoutdefault spacing="6" margin="11"/>
<customwidgets> <customwidgets>

View File

@ -176,6 +176,7 @@ void WideGraph::setQSOfreq(int n)
{ {
m_qsoFreq=n; m_qsoFreq=n;
ui->widePlot->setFQSO(m_qsoFreq,true); ui->widePlot->setFQSO(m_qsoFreq,true);
if(m_lockTxFreq) setTxFreq(m_qsoFreq);
} }
int WideGraph::QSOfreq() int WideGraph::QSOfreq()

View File

@ -34,6 +34,7 @@ public:
double fGreen(); double fGreen();
qint32 m_qsoFreq; qint32 m_qsoFreq;
bool m_lockTxFreq;
signals: signals:
void freezeDecode2(int n); void freezeDecode2(int n);