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);
|
setFreqOffsetForRestore(selectedOffset, false);
|
||||||
// TODO: prompt mode switch?
|
// 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();
|
menu->addSeparator();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1444,6 +1457,17 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
|
|||||||
setFreqOffsetForRestore(selectedOffset, false);
|
setFreqOffsetForRestore(selectedOffset, false);
|
||||||
// TODO: prompt mode switch?
|
// 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();
|
menu->addSeparator();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2302,11 +2326,9 @@ void MainWindow::readSettings()
|
|||||||
m_nSubMode=m_settings->value("SubMode",0).toInt();
|
m_nSubMode=m_settings->value("SubMode",0).toInt();
|
||||||
ui->actionModeJS8HB->setChecked(m_nSubMode == Varicode::JS8CallNormal && m_settings->value("SubModeHB", false).toBool());
|
ui->actionModeJS8HB->setChecked(m_nSubMode == Varicode::JS8CallNormal && m_settings->value("SubModeHB", false).toBool());
|
||||||
ui->actionHeartbeatAcknowledgements->setChecked(m_settings->value("SubModeHBAck", 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());
|
ui->actionModeMultiDecoder->setChecked(m_settings->value("SubModeMultiDecode", false).toBool());
|
||||||
|
setSubmode(m_nSubMode);
|
||||||
|
|
||||||
ui->sbFtol->setValue (m_settings->value("Ftol", 20).toInt());
|
ui->sbFtol->setValue (m_settings->value("Ftol", 20).toInt());
|
||||||
m_minSync=m_settings->value("MinSync",0).toInt();
|
m_minSync=m_settings->value("MinSync",0).toInt();
|
||||||
ui->syncSpinBox->setValue(m_minSync);
|
ui->syncSpinBox->setValue(m_minSync);
|
||||||
@ -3182,6 +3204,15 @@ Radio::Frequency MainWindow::dialFrequency() {
|
|||||||
m_rigState.tx_frequency () : m_rigState.frequency ()};
|
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){
|
int MainWindow::speedNameMode(QString speed){
|
||||||
if(speed == modeSpeedName(Varicode::JS8CallNormal)){
|
if(speed == modeSpeedName(Varicode::JS8CallNormal)){
|
||||||
return Varicode::JS8CallNormal;
|
return Varicode::JS8CallNormal;
|
||||||
|
@ -943,6 +943,7 @@ private:
|
|||||||
void pskLogReport(QString mode, int offset, int snr, QString callsign, QString grid);
|
void pskLogReport(QString mode, int offset, int snr, QString callsign, QString grid);
|
||||||
void aprsLogReport(int offset, int snr, QString callsign, QString grid);
|
void aprsLogReport(int offset, int snr, QString callsign, QString grid);
|
||||||
Radio::Frequency dialFrequency();
|
Radio::Frequency dialFrequency();
|
||||||
|
void setSubmode(int submode);
|
||||||
int speedNameMode(QString speed);
|
int speedNameMode(QString speed);
|
||||||
QString modeSpeedName(int submode);
|
QString modeSpeedName(int submode);
|
||||||
void updateCurrentBand();
|
void updateCurrentBand();
|
||||||
|
Loading…
Reference in New Issue
Block a user