Various fixes and disable audio system when connected/connecting

translations
Phil Taylor 2023-07-17 11:09:14 +01:00
rodzic c88aab48c7
commit 773e1dc454
9 zmienionych plików z 198 dodań i 444 usunięć

Wyświetl plik

@ -1314,6 +1314,8 @@ void memories::on_csvExport_clicked()
output << ",";
else
output << "\n";
} else if (i == ui->table->columnCount()-1) {
output << "\n";
}
}
@ -1326,6 +1328,8 @@ void memories::on_csvExport_clicked()
output << ",";
else
output << "\n";
} else if (j == ui->table->columnCount()-1) {
output << "\n";
}
}
}

Wyświetl plik

@ -479,8 +479,8 @@ Commands\91\Max=2
Commands\91\Command29=false
Commands\92\Type=Scope Main Ref
Commands\92\String=\\x27\\x19\\x00
Commands\92\Min=-30
Commands\92\Max=10
Commands\92\Min=-512
Commands\92\Max=512
Commands\92\Command29=false
Commands\93\Type=Scope Main Span
Commands\93\String=\\x27\\x15\\x00
@ -539,8 +539,8 @@ Commands\103\Max=2
Commands\103\Command29=false
Commands\104\Type=Scope Sub Ref
Commands\104\String=\\x27\\x19\\x01
Commands\104\Min=-30
Commands\104\Max=10
Commands\104\Min=-512
Commands\104\Max=512
Commands\104\Command29=false
Commands\105\Type=Scope Sub Span
Commands\105\String=\\x27\\x15\\x01
@ -557,167 +557,172 @@ Commands\107\String=\\x27\\x1d\\x01
Commands\107\Min=0
Commands\107\Max=1
Commands\107\Command29=false
Commands\108\Type=Selected Freq
Commands\108\String=\\x25\\x00
Commands\108\Type=Scope Sub Wave Data
Commands\108\String=\\x27\\x00\\x01
Commands\108\Min=0
Commands\108\Max=0
Commands\108\Command29=false
Commands\109\Type=Selected Mode
Commands\109\String=\\x26\\x00
Commands\109\Type=Selected Freq
Commands\109\String=\\x25\\x00
Commands\109\Min=0
Commands\109\Max=0
Commands\109\Command29=false
Commands\110\Type=Send CW
Commands\110\String=\\x17
Commands\110\Type=Selected Mode
Commands\110\String=\\x26\\x00
Commands\110\Min=0
Commands\110\Max=30
Commands\110\Max=0
Commands\110\Command29=false
Commands\111\Type=Speech
Commands\111\String=\\x13
Commands\111\Type=Send CW
Commands\111\String=\\x17
Commands\111\Min=0
Commands\111\Max=2
Commands\111\Max=30
Commands\111\Command29=false
Commands\112\Type=Split/Duplex
Commands\112\String=\\x0f
Commands\112\Type=Speech
Commands\112\String=\\x13
Commands\112\Min=0
Commands\112\Max=1
Commands\112\Max=2
Commands\112\Command29=false
Commands\113\Type=Squelch
Commands\113\String=\\x14\\x03
Commands\113\Type=Split/Duplex
Commands\113\String=\\x0f
Commands\113\Min=0
Commands\113\Max=255
Commands\113\Command29=true
Commands\114\Type=SSB TX Bandwidth
Commands\114\String=\\x16\\x58
Commands\113\Max=1
Commands\113\Command29=false
Commands\114\Type=Squelch
Commands\114\String=\\x14\\x03
Commands\114\Min=0
Commands\114\Max=2
Commands\114\Command29=false
Commands\115\Type=SWR Meter
Commands\115\String=\\x15\\x12
Commands\114\Max=255
Commands\114\Command29=true
Commands\115\Type=SSB TX Bandwidth
Commands\115\String=\\x16\\x58
Commands\115\Min=0
Commands\115\Max=255
Commands\115\Max=2
Commands\115\Command29=false
Commands\116\Type=System Date
Commands\116\String=\\x1a\\x05\\x01\\x58
Commands\116\Type=SWR Meter
Commands\116\String=\\x15\\x12
Commands\116\Min=0
Commands\116\Max=0
Commands\116\Max=255
Commands\116\Command29=false
Commands\117\Type=System Time
Commands\117\String=\\x1a\\x05\\x01\\x59
Commands\117\Type=System Date
Commands\117\String=\\x1a\\x05\\x01\\x58
Commands\117\Min=0
Commands\117\Max=0
Commands\117\Command29=false
Commands\118\Type=Transceiver ID
Commands\118\String=\\x19
Commands\118\Type=System Time
Commands\118\String=\\x1a\\x05\\x01\\x59
Commands\118\Min=0
Commands\118\Max=0
Commands\118\Command29=false
Commands\119\Type=Transceiver Status
Commands\119\String=\\x1c\\x00
Commands\119\Type=Transceiver ID
Commands\119\String=\\x19
Commands\119\Min=0
Commands\119\Max=1
Commands\119\Max=0
Commands\119\Command29=false
Commands\120\Type=Tuner/ATU Status
Commands\120\String=\\x1c\\x01
Commands\120\Type=Transceiver Status
Commands\120\String=\\x1c\\x00
Commands\120\Min=0
Commands\120\Max=2
Commands\120\Max=1
Commands\120\Command29=false
Commands\121\Type=Tuning Step
Commands\121\String=\\x10
Commands\121\Type=Tuner/ATU Status
Commands\121\String=\\x1c\\x01
Commands\121\Min=0
Commands\121\Max=8
Commands\121\Max=2
Commands\121\Command29=false
Commands\122\Type=Twin Peak Filter
Commands\122\String=\\x16\\x4f
Commands\122\Type=Tuning Step
Commands\122\String=\\x10
Commands\122\Min=0
Commands\122\Max=1
Commands\122\Command29=true
Commands\123\Type=Unselected Freq
Commands\123\String=\\x25\\x01
Commands\122\Max=8
Commands\122\Command29=false
Commands\123\Type=Twin Peak Filter
Commands\123\String=\\x16\\x4f
Commands\123\Min=0
Commands\123\Max=0
Commands\123\Command29=false
Commands\124\Type=Unselected Mode
Commands\124\String=\\x26\\x01
Commands\123\Max=1
Commands\123\Command29=true
Commands\124\Type=Unselected Freq
Commands\124\String=\\x25\\x01
Commands\124\Min=0
Commands\124\Max=0
Commands\124\Command29=false
Commands\125\Type=USB Mod Level
Commands\125\String=\\x1a\\x05\\x00\\x89
Commands\125\Type=Unselected Mode
Commands\125\String=\\x26\\x01
Commands\125\Min=0
Commands\125\Max=255
Commands\125\Max=0
Commands\125\Command29=false
Commands\126\Type=UTC Offset
Commands\126\String=\\x1a\\x05\\x01\\x62
Commands\126\Type=USB Mod Level
Commands\126\String=\\x1a\\x05\\x00\\x89
Commands\126\Min=0
Commands\126\Max=0
Commands\126\Max=255
Commands\126\Command29=false
Commands\127\Type=Various Squelch
Commands\127\String=\\x15\\x05
Commands\127\Type=UTC Offset
Commands\127\String=\\x1a\\x05\\x01\\x62
Commands\127\Min=0
Commands\127\Max=255
Commands\127\Command29=true
Commands\128\Type=Vd Meter
Commands\128\String=\\x15\\x15
Commands\127\Max=0
Commands\127\Command29=false
Commands\128\Type=Various Squelch
Commands\128\String=\\x15\\x05
Commands\128\Min=0
Commands\128\Max=255
Commands\128\Command29=false
Commands\129\Type=VFO Dual Watch
Commands\129\String=\\x07\\xc2
Commands\128\Command29=true
Commands\129\Type=Vd Meter
Commands\129\String=\\x15\\x15
Commands\129\Min=0
Commands\129\Max=1
Commands\129\Max=255
Commands\129\Command29=false
Commands\130\Type=VFO Dual Watch Off
Commands\130\String=\\x07\\xc0
Commands\130\Type=VFO Dual Watch
Commands\130\String=\\x07\\xc2
Commands\130\Min=0
Commands\130\Max=0
Commands\130\Max=1
Commands\130\Command29=false
Commands\131\Type=VFO Dual Watch On
Commands\131\String=\\x07\\xc1
Commands\131\Type=VFO Dual Watch Off
Commands\131\String=\\x07\\xc0
Commands\131\Min=0
Commands\131\Max=0
Commands\131\Command29=false
Commands\132\Type=VFO Equal MS
Commands\132\String=\\x07\\xb1
Commands\132\Type=VFO Dual Watch On
Commands\132\String=\\x07\\xc1
Commands\132\Min=0
Commands\132\Max=0
Commands\132\Command29=false
Commands\133\Type=VFO Main Select
Commands\133\String=\\x07\\xd0
Commands\133\Type=VFO Equal MS
Commands\133\String=\\x07\\xb1
Commands\133\Min=0
Commands\133\Max=0
Commands\133\Command29=false
Commands\134\Type=VFO Main/Sub Band
Commands\134\String=\\x07\\xd2
Commands\134\Type=VFO Main Select
Commands\134\String=\\x07\\xd0
Commands\134\Min=0
Commands\134\Max=1
Commands\134\Max=0
Commands\134\Command29=false
Commands\135\Type=VFO Sub Select
Commands\135\String=\\x07\\xd1
Commands\135\Type=VFO Main/Sub Band
Commands\135\String=\\x07\\xd2
Commands\135\Min=0
Commands\135\Max=0
Commands\135\Max=1
Commands\135\Command29=false
Commands\136\Type=VFO Swap M/S
Commands\136\String=\\x07\\xb0
Commands\136\Type=VFO Sub Select
Commands\136\String=\\x07\\xd1
Commands\136\Min=0
Commands\136\Max=0
Commands\136\Command29=false
Commands\137\Type=Vox Gain
Commands\137\String=\\x14\\x16
Commands\137\Type=VFO Swap M/S
Commands\137\String=\\x07\\xb0
Commands\137\Min=0
Commands\137\Max=255
Commands\137\Max=0
Commands\137\Command29=false
Commands\138\Type=Vox Status
Commands\138\String=\\x16\\x46
Commands\138\Type=Vox Gain
Commands\138\String=\\x14\\x16
Commands\138\Min=0
Commands\138\Max=1
Commands\138\Max=255
Commands\138\Command29=false
Commands\139\Type=XFC Status
Commands\139\String=\\x1c\\x02
Commands\139\Type=Vox Status
Commands\139\String=\\x16\\x46
Commands\139\Min=0
Commands\139\Max=1
Commands\139\Command29=false
Commands\size=139
Commands\140\Type=XFC Status
Commands\140\String=\\x1c\\x02
Commands\140\Min=0
Commands\140\Max=1
Commands\140\Command29=false
Commands\size=140
Spans\1\Num=0
Spans\1\Name=±2.5 KHz
Spans\1\Freq=2500
@ -984,12 +989,12 @@ Tuning%20Steps\17\Name=1 MHz
Tuning%20Steps\17\Hz=1000000
Tuning%20Steps\size=17
Filters\1\Num=1
Filters\1\Name=FIL1
Filters\1\Name=Filter 1
Filters\1\Modes=4294967295
Filters\2\Num=2
Filters\2\Name=FIL2
Filters\2\Name=Filter 2
Filters\2\Modes=4294967295
Filters\3\Num=3
Filters\3\Name=FIL3
Filters\3\Name=Filter 3
Filters\3\Modes=4294967295
Filters\size=3

Wyświetl plik

@ -1685,6 +1685,7 @@ void settingswidget::on_clusterTcpGroup_clicked(bool checked)
void settingswidget::on_clusterServerNameCombo_currentTextChanged(const QString &text)
{
Q_UNUSED(text)
ui->clusterTcpAddBtn->setEnabled(true);
}
@ -2585,3 +2586,9 @@ void settingswidget::onServerUserFieldChanged()
}
/* End of UDP Server settings */
// This is a slot that receives a signal from wfmain when we are connecting/disconnected
void settingswidget::connectionStatus(bool conn)
{
ui->audioSystemCombo->setEnabled(!conn);
ui->audioSystemServerCombo->setEnabled(!conn);
}

Wyświetl plik

@ -69,6 +69,8 @@ public slots:
void updateModSourceList(uchar num, QVector<rigInput> data);
void setAudioDevicesUI();
void connectionStatus(bool conn);
signals:
void changedIfPrefs(quint64 items);
void changedColPrefs(quint64 items);

Wyświetl plik

@ -1434,6 +1434,34 @@ void spectrumScope::configPressed()
theme->setCurrentIndex(theme->findData(currentTheme));
layout->addRow("Theme",theme);
QSlider* pbtInner = new QSlider(Qt::Orientation::Horizontal);
pbtInner->setRange(0,255);
double pbFreq = ((double)(this->PBTInner) / this->passbandWidth) * 127.0;
qint16 newFreq = pbFreq + 128;
if (newFreq >= 0 && newFreq <= 255) {
pbtInner->setValue(newFreq);
}
layout->addRow("PBT Inner",pbtInner);
QSlider* pbtOuter = new QSlider(Qt::Orientation::Horizontal);
pbtOuter->setRange(0,255);
pbFreq = ((double)(this->PBTOuter) / this->passbandWidth) * 127.0;
newFreq = pbFreq + 128;
if (newFreq >= 0 && newFreq <= 255) {
pbtOuter->setValue(newFreq);
}
layout->addRow("PBT Outer",pbtOuter);
QSlider* ifShift = new QSlider(Qt::Orientation::Horizontal);
length->setRange(0,255);
length->setValue(0);
layout->addRow("IF Shift",ifShift);
QSlider* filterWidth = new QSlider(Qt::Orientation::Horizontal);
length->setRange(0,10000);
length->setValue((this->passbandWidth*1E6));
layout->addRow("Fil Width",filterWidth);
connect(length, &QSlider::valueChanged, configDialog, [=](const int &val) {
prepareWf(val);
});
@ -1457,11 +1485,25 @@ void spectrumScope::configPressed()
});
connect(theme, &QComboBox::currentIndexChanged, configDialog, [=](const int &val) {
Q_UNUSED(val)
currentTheme = theme->currentData().value<QCPColorGradient::GradientPreset>();
colorMap->setGradient(currentTheme);
emit updateTheme(sub,currentTheme);
});
connect(pbtInner, &QSlider::valueChanged, configDialog, [=](const int &val) {
queue->add(priorityImmediate,queueItem(funcPBTInner,QVariant::fromValue<ushort>(val),false,sub));
});
connect(pbtOuter, &QSlider::valueChanged, configDialog, [=](const int &val) {
queue->add(priorityImmediate,queueItem(funcPBTInner,QVariant::fromValue<ushort>(val),false,sub));
});
connect(ifShift, &QSlider::valueChanged, configDialog, [=](const int &val) {
queue->add(priorityImmediate,queueItem(funcIFShift,QVariant::fromValue<ushort>(val),false,sub));
});
connect(filterWidth, &QSlider::valueChanged, configDialog, [=](const int &val) {
queue->add(priorityImmediate,queueItem(funcFilterWidth,QVariant::fromValue<short>(val),false,sub));
});
configDialog->show();
}

Wyświetl plik

@ -340,14 +340,16 @@ void wfmain::openRig()
// showRigSettings(); // rig setting dialog box for network/serial, CIV, hostname, port, baud rate, serial device, etc
// TODO: How do we know if the setting was loaded?
emit connectionStatus(true); // Signal any other parts that need to know if we are connecting/connected.
ui->connectBtn->setText("Cancel connection"); // We are attempting to connect
connStatus = connConnecting;
makeRig();
if (prefs.enableLAN)
{
usingLAN = true;
// We need to setup the tx/rx audio:
// "We need to setup the tx/rx audio:
udpPrefs.waterfallFormat = prefs.waterfallFormat;
emit sendCommSetup(rigList, prefs.radioCIVAddr, udpPrefs, prefs.rxSetup, prefs.txSetup, prefs.virtualSerialPort, prefs.tcpPort);
} else {
@ -664,7 +666,7 @@ void wfmain::rigConnections()
connect(this, SIGNAL(setPBTOuter(unsigned char)), rig, SLOT(setPBTOuter(unsigned char)));
connect(this, SIGNAL(setTxPower(unsigned char)), rig, SLOT(setTxPower(unsigned char)));
connect(this, SIGNAL(setMicGain(unsigned char)), rig, SLOT(setMicGain(unsigned char)));
connect(this, SIGNAL(setMonitorGain(unsigned char)), rig, SLOT(setMonitorGain(unsigned char)));
connect(this, SIGNAL(setMonitorGain(unsigned char)), rig, SLOT(setMonitorGafin(unsigned char)));
connect(this, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char)));
connect(this, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char)));
connect(this, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int)));
@ -1088,21 +1090,6 @@ void wfmain::setupMainUI()
[=](const int &newValue) { statusFromSliderPercent("Squelch", newValue);}
);
connect(this->trxadj, &transceiverAdjustments::setIFShift, this, [=](const unsigned char &newValue) {
queue->add(priorityImmediate,queueItem(funcIFShift,QVariant::fromValue<uint>(newValue)));
});
connect(this->trxadj, &transceiverAdjustments::setPBTInner, this, [=](const unsigned char &newValue) {
queue->add(priorityImmediate,queueItem(funcPBTOuter,QVariant::fromValue<ushort>(newValue)));
});
connect(this->trxadj, &transceiverAdjustments::setPBTOuter, this, [=](const unsigned char &newValue) {
queue->add(priorityImmediate,queueItem(funcPBTOuter,QVariant::fromValue<ushort>(newValue)));
});
connect(this->trxadj, &transceiverAdjustments::setPassband, this, [=](const quint16 &passbandHz) {
queue->add(priorityImmediate,queueItem(funcPBTInner,QVariant::fromValue<short>(passbandHz)));
});
/*
connect(this->cw, &cwSender::sendCW,
[=](const QString &cwMessage) { issueCmd(cmdSendCW, cwMessage);});
@ -1156,24 +1143,11 @@ void wfmain::connectSettingsWidget()
connect(setupui, SIGNAL(changedServerTXAudioOutputCombo(int)), this, SLOT(changedServerTXAudioOutput(int)));
connect(setupui, SIGNAL(changedModInput(uchar,inputTypes)), this, SLOT(changedModInput(uchar,inputTypes)));
connect(this, SIGNAL(connectionStatus(bool)), setupui, SLOT(connectionStatus(bool)));
}
// NOT Migrated, EHL TODO, carefully remove this function
void wfmain::updateSizes(int tabIndex)
{
// This function does nothing unless you are using a rig without spectrum.
// This is a hack. It is not great, but it seems to work ok.
if(!rigCaps.hasSpectrum)
{
this->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
this->setMaximumSize(QSize(940,380));
this->setMinimumSize(QSize(940,380));
resize(minimumSize());
adjustSize(); // main window
}
}
void wfmain::getSettingsFilePath(QString settingsFile)
{
@ -1537,7 +1511,7 @@ void wfmain::setupKeyShortcuts()
#else
keyDebug->setKey(Qt::CTRL | Qt::Key_D);
#endif
connect(keyDebug, SIGNAL(activated()), this, SLOT(on_debugBtn_clicked()));
connect(keyDebug, SIGNAL(activated()), this, SLOT(debugBtn_clicked()));
}
void wfmain::setupUsbControllerDevice()
@ -3340,12 +3314,6 @@ void wfmain::showHideSpectrum(bool show)
ui->subScope->setVisible(false);
}
void wfmain::prepareWf(unsigned int wfLength)
{
}
// Key shortcuts (hotkeys)
void wfmain::shortcutF11()
@ -3462,8 +3430,8 @@ void wfmain::shortcutStar()
void wfmain::shortcutSlash()
{
// Cycle through available modes
ui->modeSelectCombo->setCurrentIndex( (ui->modeSelectCombo->currentIndex()+1) % ui->modeSelectCombo->count() );
on_modeSelectCombo_activated( ui->modeSelectCombo->currentIndex() );
//ui->modeSelectCombo->setCurrentIndex( (ui->modeSelectCombo->currentIndex()+1) % ui->modeSelectCombo->count() );
//on_modeSelectCombo_activated( ui->modeSelectCombo->currentIndex() );
}
void wfmain::setTuningSteps()
@ -4083,10 +4051,6 @@ void wfmain::receiveRigID(rigCapabilities rigCaps)
setupui->updateModSourceList(0, rigCaps.inputs);
setupui->updateModSourceList(1, rigCaps.inputs);
ui->datamodeCombo->clear();
ui->datamodeCombo->addItem("Off",0);
ui->mainScope->clearData();
ui->subScope->clearData();
@ -4182,9 +4146,7 @@ void wfmain::receiveRigID(rigCapabilities rigCaps)
//ui->audioSystemServerCombo->setEnabled(false);
ui->connectBtn->setText("Disconnect from Radio"); // We must be connected now.
prepareWf(prefs.wflength);
connStatus = connConnected;
if(usingLAN)
{
ui->afGainSlider->setValue(prefs.localAFgain);
@ -4324,30 +4286,6 @@ void wfmain::changeTxBtn()
}
}
void wfmain::receiveMode(modeInfo mode, bool sub)
{
Q_UNUSED(mode)
Q_UNUSED(sub)
qInfo() << "Deprecated receiveMode() called";
// Deprecated
return; // We have nothing more to process
}
void wfmain::receiveDataModeStatus(uchar data, uchar filter)
{
ui->datamodeCombo->blockSignals(true);
ui->datamodeCombo->setCurrentIndex(data);
ui->datamodeCombo->blockSignals(false);
if (filter)
{
ui->modeFilterCombo->blockSignals(true);
ui->modeFilterCombo->setCurrentIndex(ui->modeFilterCombo->findData(filter));
ui->modeFilterCombo->blockSignals(false);
}
usingDataMode = data;
}
void wfmain::changeFullScreenMode(bool checked)
{
if(checked)
@ -4375,14 +4313,12 @@ void wfmain::changeMode(rigMode_t mode)
void wfmain::changeMode(rigMode_t mode, unsigned char data)
{
foreach (modeInfo mi, rigCaps.modes)
{
if (mi.mk == mode)
{
modeInfo m;
m = modeInfo(mi);
m.filter = ui->modeFilterCombo->currentData().toInt();
m.data = data;
m.VFO=selVFO_t::activeVFO;
if((m.mk != currentModeInfo.mk) && prefs.automaticSidebandSwitching)
@ -4396,31 +4332,6 @@ void wfmain::changeMode(rigMode_t mode, unsigned char data)
}
queue->add(priorityImmediate,(rigCaps.commands.contains(funcSelectedMode)?funcSelectedMode:funcModeGet),false);
ui->datamodeCombo->blockSignals(true);
ui->datamodeCombo->setCurrentIndex(data);
ui->datamodeCombo->blockSignals(false);
}
void wfmain::on_modeSelectCombo_activated(int index)
{
// The "activated" signal means the user initiated a mode change.
// This function is not called if code initiated the change.
rigMode_t newMode = static_cast<rigMode_t>(ui->modeSelectCombo->itemData(index).toUInt());
qInfo(logSystem()) << __func__ << " at index " << index << " has newMode: " << newMode;
foreach (modeInfo mi, rigCaps.modes)
{
if (mi.mk == newMode)
{
modeInfo m = modeInfo(mi);
m.filter = static_cast<uchar>(ui->modeFilterCombo->currentData().toInt());
m.data = usingDataMode;
m.VFO=selVFO_t::activeVFO;
queue->add(priorityImmediate,queueItem((rigCaps.commands.contains(funcSelectedMode)?funcSelectedMode:funcModeSet),QVariant::fromValue<modeInfo>(m),false));
break;
}
}
}
void wfmain::on_freqDial_valueChanged(int value)
@ -4525,12 +4436,12 @@ void wfmain::gotoMemoryPreset(int presetNumber)
{
qWarning(logGui()) << "Recalled Preset #" << presetNumber << "is not set.";
}
setFilterVal = ui->modeFilterCombo->currentIndex()+1; // TODO, add to memory
//setFilterVal = ui->modeFilterCombo->currentIndex()+1; // TODO, add to memory
setModeVal = temp.mode;
freqt memFreq;
modeInfo m;
m.mk = temp.mode;
m.filter = ui->modeFilterCombo->currentIndex()+1;
//m.filter = ui->modeFilterCombo->currentIndex()+1;
m.reg =(unsigned char) m.mk; // fallback, works only for some modes
memFreq.Hz = temp.frequency * 1E6;
//issueCmd(cmdSetFreq, memFreq);
@ -4732,7 +4643,7 @@ void wfmain::on_connectBtn_clicked()
{
this->rigStatus->setText(""); // Clear status
if (ui->connectBtn->text() == "Connect to Radio") {
if (connStatus == connDisconnected) {
connectionHandler(true);
}
else
@ -4747,71 +4658,6 @@ void wfmain::on_sqlSlider_valueChanged(int value)
{
queue->addUnique(priorityImmediate,queueItem(funcSquelch,QVariant::fromValue<ushort>(value)));
}
// These three are from the transceiver adjustment window:
void wfmain::changeIFShift(unsigned char level)
{
queue->add(priorityImmediate,queueItem((rigCaps.commands.contains(funcFilterWidth)?funcFilterWidth:funcIFShift),QVariant::fromValue<ushort>(level),false));
}
void wfmain::changePBTInner(unsigned char level)
{
queue->add(priorityImmediate,queueItem(funcPBTInner,QVariant::fromValue<ushort>(level)));
}
void wfmain::changePBTOuter(unsigned char level)
{
queue->add(priorityImmediate,queueItem(funcPBTOuter,QVariant::fromValue<ushort>(level)));
}
void wfmain::on_modeFilterCombo_activated(int index)
{
int filterSelection = ui->modeFilterCombo->itemData(index).toInt();
if(filterSelection == 99)
{
// TODO:
// Bump the filter selected back to F1, F2, or F3
// possibly track the filter in the class. Would make this easier.
// filterSetup.show();
//
} else {
unsigned char newMode = static_cast<unsigned char>(ui->modeSelectCombo->currentData().toUInt());
foreach (modeInfo mi, rigCaps.modes)
{
if (mi.mk == (rigMode_t)newMode)
{
modeInfo m;
m = modeInfo(mi);
m.filter = filterSelection;
m.data = usingDataMode;
m.VFO=selVFO_t::activeVFO;
queue->add(priorityImmediate, queueItem((rigCaps.commands.contains(funcSelectedMode)?funcSelectedMode:funcModeSet),QVariant::fromValue<modeInfo>(m),false));
break;
}
}
}
}
void wfmain::on_datamodeCombo_activated(int index)
{
modeInfo m;
m.filter = ui->modeFilterCombo->currentData().toInt();
m.data = index;
queue->add(priorityImmediate, queueItem(funcDataModeWithFilter,QVariant::fromValue<modeInfo>(m)));
usingDataMode = index;
if(usingDataMode == 0) {
changeModLabelAndSlider(currentModDataOffSrc);
} else if (usingDataMode == 1){
changeModLabelAndSlider(currentModData1Src);
} else if (usingDataMode == 2){
changeModLabelAndSlider(currentModData2Src);
} else if (usingDataMode == 3){
changeModLabelAndSlider(currentModData3Src);
}
}
void wfmain::on_transmitBtn_clicked()
{
@ -5005,10 +4851,10 @@ void wfmain::receiveModInput(rigInput input, unsigned char data)
if (item != rs_all)
{
setupui->updateRsPrefs(item);
if (ui->datamodeCombo->currentData().toUInt() == data) {
queue->add(priorityImmediate,getInputTypeCommand(input.type),false);
changeModLabel(input);
}
//if (ui->datamodeCombo->currentData().toUInt() == data) {
// queue->add(priorityImmediate,getInputTypeCommand(input.type),false);
// changeModLabel(input);
//}
}
}
@ -5018,7 +4864,7 @@ void wfmain::receivePassband(quint16 pass)
double pb = (double)(pass / 1000000.0);
if (ui->mainScope->getPassbandWidth() != pb) {
ui->mainScope->setPassbandWidth(pb);
trxadj->updatePassband(pass);
qInfo(logSystem()) << QString("Received new IF Filter/Passband %0 Hz").arg(pass);
showStatusBarText(QString("IF filter width %0 Hz (%1 MHz)").arg(pass).arg(passbandWidth));
}
@ -5248,39 +5094,6 @@ void wfmain::on_tuneLockChk_clicked(bool checked)
freqLock = checked;
}
void wfmain::on_serialDeviceListCombo_textActivated(const QString &arg1)
{
QString manualPort;
bool ok;
if(arg1==QString("Manual..."))
{
manualPort = QInputDialog::getText(this, tr("Manual port assignment"),
tr("Enter serial port assignment:"),
QLineEdit::Normal,
tr("/dev/device"), &ok);
if(manualPort.isEmpty() || !ok)
{
//ui->serialDeviceListCombo->blockSignals(true);
//ui->serialDeviceListCombo->setCurrentIndex(0);
//ui->serialDeviceListCombo->blockSignals(false);
return;
} else {
prefs.serialPortRadio = manualPort;
showStatusBarText("Setting preferences to use manually-assigned serial port: " + manualPort);
return;
}
}
if(arg1==QString("Auto"))
{
prefs.serialPortRadio = "auto";
showStatusBarText("Setting preferences to automatically find rig serial port.");
return;
}
prefs.serialPortRadio = arg1;
showStatusBarText("Setting preferences to use manually-assigned serial port: " + arg1);
}
void wfmain::on_rptSetupBtn_clicked()
{
if(rpt->isMinimized())
@ -5496,10 +5309,6 @@ void wfmain::hideButton(QPushButton *btn)
btn->setHidden(true);
}
void wfmain::on_baudRateCombo_activated(int index)
{
}
funcs wfmain::meter_tToMeterCommand(meter_t m)
{
funcs c;
@ -5594,24 +5403,6 @@ void wfmain::enableRigCtl(bool enabled)
}
}
void wfmain::on_moreControlsBtn_clicked()
{
if(trxadj->isMinimized())
{
trxadj->raise();
trxadj->activateWindow();
return;
}
trxadj->show();
trxadj->raise();
trxadj->activateWindow();
}
void wfmain::on_setClockBtn_clicked()
{
setRadioTimeDatePrep();
}
void wfmain::radioSelection(QList<radio_cap_packet> radios)
{
selRad->populate(radios);
@ -5636,7 +5427,7 @@ void wfmain::setAudioDevicesUI()
// --- DEBUG FUNCTION ---
void wfmain::on_debugBtn_clicked()
void wfmain::debugBtn_clicked()
{
qInfo(logSystem()) << "Debug button pressed.";
//qDebug(logSystem()) << "Query for repeater access mode (tone, tsql, etc) sent.";
@ -5814,8 +5605,11 @@ void wfmain::connectionHandler(bool connect)
emit sendCloseComm();
haveRigCaps = false;
rigName->setText("NONE");
connStatus = connDisconnected;
if (connect && ui->connectBtn->text() != "Cancel connection") {
emit connectionStatus(connect); // Signal any other parts that need to know if we are connecting/connected.
if (connect) {
openRig();
} else {
ui->connectBtn->setText("Connect to Radio");
@ -6186,8 +5980,6 @@ void wfmain::receiveValue(cacheItem val){
ui->mainScope->setFrequency(bsr.freq);
foreach (auto md, rigCaps.modes)
{
if (md.reg == bsr.mode) {
@ -6209,7 +6001,10 @@ void wfmain::receiveValue(cacheItem val){
//receivePassband(val.value.value<ushort>());
break;
case funcDataModeWithFilter:
receiveDataModeStatus(val.value.value<modeInfo>().data,val.value.value<modeInfo>().filter);
if (val.sub)
ui->subScope->receiveMode(val.value.value<modeInfo>());
else
ui->mainScope->receiveMode(val.value.value<modeInfo>());
break;
case funcAFMute:
break;

Wyświetl plik

@ -303,6 +303,7 @@ signals:
void sendControllerRequest(USBDEVICE* dev, usbFeatureType request, int val=0, QString text="", QImage* img=Q_NULLPTR, QColor* color=Q_NULLPTR);
// Signals to forward incoming data onto other areas
void haveMemory(memoryType mem);
void connectionStatus(bool conn);
private slots:
// Triggered from external preference changes:
@ -329,7 +330,6 @@ private slots:
void receiveTheme(bool sub, int theme);
void receiveValue(cacheItem val);
void setAudioDevicesUI();
void updateSizes(int tabIndex);
void shortcutF1();
void shortcutF2();
void shortcutF3();
@ -372,9 +372,8 @@ private slots:
void receiveCommReady();
void receiveFreq(freqt);
void receiveMode(modeInfo mode, bool sub=false);
void receivePTTstatus(bool pttOn);
void receiveDataModeStatus(uchar data, uchar filter);
void handleBandStackReg(freqt f, char mode, char filter, bool dataOn); // freq, mode, (filter,) datamode
void receiveRITStatus(bool ritEnabled);
void receiveRITValue(int ritValHz);
@ -400,10 +399,6 @@ private slots:
void receiveSql(unsigned char level);
void receiveIFShift(unsigned char level);
// 'change' from data in transceiver controls window:
void changeIFShift(unsigned char level);
void changePBTInner(unsigned char level);
void changePBTOuter(unsigned char level);
void receiveTxPower(unsigned char power);
void receiveMicGain(unsigned char gain);
void receiveCompLevel(unsigned char compLevel);
@ -449,7 +444,6 @@ private slots:
void changeFullScreenMode(bool checked);
void on_modeSelectCombo_activated(int index);
void on_freqDial_valueChanged(int value);
void on_aboutBtn_clicked();
@ -464,16 +458,12 @@ private slots:
void on_tuneEnableChk_clicked(bool checked);
bool on_exitBtn_clicked();
void on_saveSettingsBtn_clicked();
void on_debugBtn_clicked();
void debugBtn_clicked();
void on_connectBtn_clicked();
void on_sqlSlider_valueChanged(int value);
void on_modeFilterCombo_activated(int index);
void on_datamodeCombo_activated(int index);
void on_transmitBtn_clicked();
void on_txPowerSlider_valueChanged(int value);
void on_micGainSlider_valueChanged(int value);
@ -482,7 +472,6 @@ private slots:
void on_tuneLockChk_clicked(bool checked);
void on_tuningStepCombo_currentIndexChanged(int index);
void on_serialDeviceListCombo_textActivated(const QString &arg1);
void on_rptSetupBtn_clicked();
void on_attSelCombo_activated(int index);
void on_preampSelCombo_activated(int index);
@ -492,15 +481,12 @@ private slots:
void on_rigPowerOffBtn_clicked();
void on_ritTuneDial_valueChanged(int value);
void on_ritEnableChk_clicked(bool checked);
void on_baudRateCombo_activated(int);
void changeMeter2Type(meter_t m);
void enableRigCtl(bool enabled);
void on_moreControlsBtn_clicked();
void on_memoriesBtn_clicked();
void on_setClockBtn_clicked();
void changedModInput(uchar val, inputTypes type);
void on_radioStatusBtn_clicked();
@ -546,7 +532,6 @@ private:
QCPItemText* oorIndicator;
QCPItemText* ovfIndicator;
void setAppTheme(bool isCustom);
void prepareWf(unsigned int wfLength);
void showHideSpectrum(bool show);
void getInitialRigState();
@ -843,6 +828,7 @@ private:
QColor clusterColor;
audioDevices* audioDev = Q_NULLPTR;
QImage lcdImage;
connectionStatus_t connStatus = connDisconnected;
};
Q_DECLARE_METATYPE(udpPreferences)

Wyświetl plik

@ -6,10 +6,13 @@
<rect>
<x>0</x>
<y>0</y>
<width>1088</width>
<width>922</width>
<height>569</height>
</rect>
</property>
<property name="acceptDrops">
<bool>true</bool>
</property>
<property name="windowTitle">
<string>wfmain</string>
</property>
@ -103,7 +106,7 @@
<string>Current Frequency in MHZ</string>
</property>
<property name="text">
<string>0000.000000</string>
<string>00000.000000</string>
</property>
</widget>
</item>
@ -307,98 +310,6 @@
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_11">
<property name="rightMargin">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>30</height>
</size>
</property>
<property name="text">
<string>Mode:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="modeSelectCombo">
<property name="enabled">
<bool>false</bool>
</property>
<property name="accessibleName">
<string>Mode Selector</string>
</property>
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToContents</enum>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_55">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Data:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="datamodeCombo">
<property name="enabled">
<bool>false</bool>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_22">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Receive Filter</string>
</property>
<property name="alignment">
<set>Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft</set>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="modeFilterCombo">
<property name="enabled">
<bool>false</bool>
</property>
<property name="accessibleName">
<string>Receive Filter Selection</string>
</property>
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToContents</enum>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="moreControlsBtn">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Show additional controls</string>
</property>
<property name="text">
<string>Show More</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_8">
<property name="rightMargin">

Wyświetl plik

@ -8,6 +8,8 @@
#include <stdint.h>
#include <memory>
enum connectionStatus_t { connDisconnected, connConnecting, connConnected };
enum underlay_t { underlayNone, underlayPeakHold, underlayPeakBuffer, underlayAverageBuffer };
enum meter_t {