Added quick qrq actions for jumping to a qso speed
This commit is contained in:
parent
7a248b69c4
commit
980ffcb22c
@ -1225,6 +1225,19 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
|
||||
setFreqOffsetForRestore(selectedOffset, false);
|
||||
// TODO: prompt mode switch?
|
||||
});
|
||||
|
||||
auto items = m_bandActivity.value(selectedOffset);
|
||||
if(!items.isEmpty()){
|
||||
auto speed = items.last().speed;
|
||||
int submode = speedNameMode(speed);
|
||||
if(submode != m_nSubMode){
|
||||
auto qrqAction = menu->addAction(QString("Jump to %1%2 speed").arg(speed.left(1)).arg(speed.mid(1).toLower()));
|
||||
connect(qrqAction, &QAction::triggered, this, [this, submode](){
|
||||
setSubmode(submode);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
menu->addSeparator();
|
||||
}
|
||||
|
||||
@ -1444,6 +1457,17 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
|
||||
setFreqOffsetForRestore(selectedOffset, false);
|
||||
// TODO: prompt mode switch?
|
||||
});
|
||||
|
||||
|
||||
auto speed = m_callActivity[selectedCall].speed;
|
||||
int submode = speedNameMode(speed);
|
||||
if(submode != m_nSubMode){
|
||||
auto qrqAction = menu->addAction(QString("Jump to %1%2 speed").arg(speed.left(1)).arg(speed.mid(1).toLower()));
|
||||
connect(qrqAction, &QAction::triggered, this, [this, submode](){
|
||||
setSubmode(submode);
|
||||
});
|
||||
}
|
||||
|
||||
menu->addSeparator();
|
||||
}
|
||||
}
|
||||
@ -2302,11 +2326,9 @@ void MainWindow::readSettings()
|
||||
m_nSubMode=m_settings->value("SubMode",0).toInt();
|
||||
ui->actionModeJS8HB->setChecked(m_nSubMode == Varicode::JS8CallNormal && m_settings->value("SubModeHB", false).toBool());
|
||||
ui->actionHeartbeatAcknowledgements->setChecked(m_settings->value("SubModeHBAck", false).toBool());
|
||||
ui->actionModeJS8Normal->setChecked(m_nSubMode == Varicode::JS8CallNormal);
|
||||
ui->actionModeJS8Fast->setChecked(m_nSubMode == Varicode::JS8CallFast);
|
||||
ui->actionModeJS8Turbo->setChecked(m_nSubMode == Varicode::JS8CallTurbo);
|
||||
ui->actionModeJS8Ultra->setChecked(m_nSubMode == Varicode::JS8CallUltra);
|
||||
ui->actionModeMultiDecoder->setChecked(m_settings->value("SubModeMultiDecode", false).toBool());
|
||||
setSubmode(m_nSubMode);
|
||||
|
||||
ui->sbFtol->setValue (m_settings->value("Ftol", 20).toInt());
|
||||
m_minSync=m_settings->value("MinSync",0).toInt();
|
||||
ui->syncSpinBox->setValue(m_minSync);
|
||||
@ -3182,6 +3204,15 @@ Radio::Frequency MainWindow::dialFrequency() {
|
||||
m_rigState.tx_frequency () : m_rigState.frequency ()};
|
||||
}
|
||||
|
||||
void MainWindow::setSubmode(int submode){
|
||||
m_nSubMode = submode;
|
||||
ui->actionModeJS8Normal->setChecked(submode == Varicode::JS8CallNormal);
|
||||
ui->actionModeJS8Fast->setChecked(submode == Varicode::JS8CallFast);
|
||||
ui->actionModeJS8Turbo->setChecked(submode == Varicode::JS8CallTurbo);
|
||||
ui->actionModeJS8Ultra->setChecked(submode == Varicode::JS8CallUltra);
|
||||
on_actionJS8_triggered();
|
||||
}
|
||||
|
||||
int MainWindow::speedNameMode(QString speed){
|
||||
if(speed == modeSpeedName(Varicode::JS8CallNormal)){
|
||||
return Varicode::JS8CallNormal;
|
||||
|
@ -943,6 +943,7 @@ private:
|
||||
void pskLogReport(QString mode, int offset, int snr, QString callsign, QString grid);
|
||||
void aprsLogReport(int offset, int snr, QString callsign, QString grid);
|
||||
Radio::Frequency dialFrequency();
|
||||
void setSubmode(int submode);
|
||||
int speedNameMode(QString speed);
|
||||
QString modeSpeedName(int submode);
|
||||
void updateCurrentBand();
|
||||
|
Loading…
Reference in New Issue
Block a user