Clean up the "Active Stations" display when used with Q65W.

This commit is contained in:
Joe Taylor 2022-12-07 11:45:05 -05:00
parent df21127af7
commit 10c70d042c
4 changed files with 40 additions and 24 deletions

View File

@ -57,8 +57,23 @@ void ActiveStations::write_settings ()
settings_->setValue("ReadyOnly",ui->cbReadyOnly->isChecked());
}
void ActiveStations::displayRecentStations(QString const& t)
void ActiveStations::displayRecentStations(QString mode, QString const& t)
{
m_mode=mode;
bool b=(m_mode=="Q65");
if(b) {
ui->header_label2->setText(" N Freq Call Age");
ui->label->setText("QSOs:");
} else {
ui->header_label2->setText(" N Call Grid Az S/N Freq Tx Age Pts");
ui->label->setText("Rate:");
}
ui->bandChanges->setVisible(!b);
ui->cbReadyOnly->setVisible(!b);
ui->label_2->setVisible(!b);
ui->label_3->setVisible(!b);
ui->score->setVisible(!b);
ui->sbMaxRecent->setVisible(!b);
ui->RecentStationsPlainTextEdit->setPlainText(t);
}

View File

@ -19,7 +19,7 @@ class ActiveStations
public:
explicit ActiveStations(QSettings *, QFont const&, QWidget * parent = 0);
~ActiveStations();
void displayRecentStations(QString const&);
void displayRecentStations(QString mode, QString const&);
void changeFont (QFont const&);
int maxRecent();
int maxAge();
@ -44,6 +44,7 @@ private:
Q_SLOT void on_cbReadyOnly_toggled(bool b);
qint64 m_msec0=0;
QString m_mode="";
QSettings * settings_;
QScopedPointer<Ui::ActiveStations> ui;

View File

@ -50,7 +50,7 @@
<widget class="QLineEdit" name="rate">
<property name="maximumSize">
<size>
<width>16777215</width>
<width>80</width>
<height>16777215</height>
</size>
</property>
@ -82,6 +82,12 @@
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>80</width>
<height>16777215</height>
</size>
</property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Set maximum elapsed number of T/R sequences.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>

View File

@ -1369,7 +1369,6 @@ void MainWindow::readSettings()
if (displayContestLog) on_contest_log_action_triggered ();
if(displayActiveStations) {
on_actionActiveStations_triggered();
// QFile f {m_config.writeable_data_dir ().absoluteFilePath ("activeCalls.txt")};
}
}
@ -3645,7 +3644,7 @@ void MainWindow::ARRL_Digi_Display()
t += (t1 + list[k] + "\n");
if(i>=maxRecent) break;
}
if(m_ActiveStationsWidget!=NULL) m_ActiveStationsWidget->displayRecentStations(t);
if(m_ActiveStationsWidget!=NULL) m_ActiveStationsWidget->displayRecentStations(m_mode,t);
m_ActiveStationsWidget->setClickOK(true);
}
@ -9183,19 +9182,11 @@ void MainWindow::readWidebandDecodes()
QString w3=msg.mid(i2+1,-1);
m_EMECall[dxcall].fsked=fsked;
m_EMECall[dxcall].t=60*nhr + nmin;
m_EMECall[dxcall].worked=false;
m_EMECall[dxcall].worked=false; //### TEMPORARY ###
if(w3.contains(grid_regexp)) m_EMECall[dxcall].grid4=w3;
}
f.close();
/*
if(m_ActiveStationsWidget != NULL) m_ActiveStationsWidget->erase();
if(m_ActiveStationsWidget!=NULL) m_ActiveStationsWidget->displayRecentStations(t);
QString t1;
if(!bReady) t1 = t1.asprintf(" %3d %+2.2d %4d %1d %2d %4d",az,snr,freq,itx,age,points);
*/
QMap<QString,EMECall>::iterator i;
QString t="";
QString t1;
@ -9203,20 +9194,23 @@ void MainWindow::readWidebandDecodes()
QStringList list;
float f[100];
int indx[100];
int maxAge=m_ActiveStationsWidget->maxAge();
int k=0;
for(i=m_EMECall.begin(); i!=m_EMECall.end(); i++) {
int age=60*nhr + nmin - (i->t);
if(age<0) age += 1440;
dxcall=(i.key()+" ").left(8);
if(i->worked) {
t1=t1.asprintf("%5.1f %8s %4d\n",i->fsked,dxcall.toLatin1().constData(),age);
} else {
t1=t1.asprintf("%5.1f * %8s %4d\n",i->fsked,dxcall.toLatin1().constData(),age);
if(age<=maxAge) {
dxcall=(i.key()+" ").left(8);
if(i->worked) {
t1=t1.asprintf("%5.1f %8s %4d\n",i->fsked,dxcall.toLatin1().constData(),age);
} else {
t1=t1.asprintf("%5.1f * %8s %4d\n",i->fsked,dxcall.toLatin1().constData(),age);
}
f[k]=i->fsked;
list.append(t1);
k++;
}
f[k]=i->fsked;
list.append(t1);
k++;
}
if(k>0) {
@ -9225,7 +9219,7 @@ void MainWindow::readWidebandDecodes()
indexx_(f,&kz,indx);
for(int k=0; k<kz; k++) {
int j=indx[k]-1;
t1=t1.asprintf("%3d ",k+1);
t1=t1.asprintf("%2d ",k+1);
t1+=list[j];
t+=t1;
}
@ -9233,7 +9227,7 @@ void MainWindow::readWidebandDecodes()
if(m_ActiveStationsWidget != NULL) {
m_ActiveStationsWidget->erase();
m_ActiveStationsWidget->displayRecentStations(t);
m_ActiveStationsWidget->displayRecentStations(m_mode,t);
}
}
}