kopia lustrzana https://gitlab.com/eliggett/wfview
Porównaj commity
9 Commity
03a1c5dfe9
...
cb28ba02ba
Autor | SHA1 | Data |
---|---|---|
Phil Taylor | cb28ba02ba | |
Phil Taylor | 11de766bfd | |
Phil Taylor | 84c576c8a7 | |
Phil Taylor | 1c057d98c2 | |
Phil Taylor | f088e5b8f9 | |
Phil Taylor | f2dc28f298 | |
Phil Taylor | 235869a501 | |
Phil Taylor | ffeec4925a | |
Phil Taylor | ce71260bc5 |
|
@ -48,7 +48,7 @@ bool audioConverter::init(QAudioFormat inFormat, codecType inCodec, QAudioFormat
|
|||
//opus_encoder_ctl(opusEncoder, OPUS_SET_DTX(1));
|
||||
//opus_encoder_ctl(opusEncoder, OPUS_SET_PACKET_LOSS_PERC(5));
|
||||
opus_encoder_ctl(opusEncoder, OPUS_SET_COMPLEXITY(opusComplexity)); // Reduce complexity to maybe lower CPU?
|
||||
qInfo(logAudioConverter()) << "Creating opus encoder: " << opus_strerror(opus_err);
|
||||
qInfo(logAudioConverter()) << "Creating opus encoder: " << opus_strerror(opus_err);
|
||||
}
|
||||
|
||||
if (inFormat.sampleRate() != outFormat.sampleRate())
|
||||
|
|
222
bandbuttons.cpp
222
bandbuttons.cpp
|
@ -13,6 +13,7 @@ bandbuttons::bandbuttons(QWidget *parent) :
|
|||
this->setWindowTitle("Band Switcher");
|
||||
this->setObjectName("bandButtons");
|
||||
queue = cachingQueue::getInstance(this);
|
||||
connect(queue, SIGNAL(rigCapsUpdated(rigCapabilities*)), this, SLOT(receiveRigCaps(rigCapabilities*)));
|
||||
}
|
||||
|
||||
bandbuttons::~bandbuttons()
|
||||
|
@ -25,26 +26,24 @@ int bandbuttons::getBSRNumber()
|
|||
return ui->bandStkPopdown->currentIndex()+1;
|
||||
}
|
||||
|
||||
void bandbuttons::acceptRigCaps(rigCapabilities rc)
|
||||
void bandbuttons::receiveRigCaps(rigCapabilities* rc)
|
||||
{
|
||||
this->rigCaps = rc;
|
||||
qDebug(logGui()) << "Accepting new rigcaps into band buttons.";
|
||||
if(haveRigCaps)
|
||||
qDebug(logGui()) << "Accepting additional rigcaps into band buttons.";
|
||||
|
||||
qDebug(logGui()) << "Bands in this rigcaps: ";
|
||||
for(size_t i=0; i < rigCaps.bands.size(); i++)
|
||||
{
|
||||
qDebug(logGui()) << "band[" << i << "]: " << (unsigned char)rigCaps.bands.at(i).band;
|
||||
if (rigCaps != Q_NULLPTR) {
|
||||
qDebug(logGui()) << "Bands in this rigcaps: ";
|
||||
for(size_t i=0; i < rigCaps->bands.size(); i++)
|
||||
{
|
||||
qDebug(logGui()) << "band[" << i << "]: " << (unsigned char)rigCaps->bands.at(i).band;
|
||||
}
|
||||
|
||||
for(size_t i=0; i < 20; i++)
|
||||
{
|
||||
qDebug(logGui()) << "bsr[" << i << "]: " << (unsigned char)rigCaps->bsr[i];
|
||||
}
|
||||
}
|
||||
|
||||
for(size_t i=0; i < 20; i++)
|
||||
{
|
||||
qDebug(logGui()) << "bsr[" << i << "]: " << (unsigned char)rigCaps.bsr[i];
|
||||
}
|
||||
|
||||
setUIToRig();
|
||||
haveRigCaps = true;
|
||||
}
|
||||
|
||||
void bandbuttons::setUIToRig()
|
||||
|
@ -76,82 +75,84 @@ void bandbuttons::setUIToRig()
|
|||
hideButton(ui->band2200mbtn);
|
||||
hideButton(ui->bandGenbtn);
|
||||
|
||||
for (auto &band: rigCaps.bands)
|
||||
{
|
||||
switch(band.band)
|
||||
if (rigCaps != Q_NULLPTR) {
|
||||
for (auto &band: rigCaps->bands)
|
||||
{
|
||||
case(band3cm):
|
||||
showButton(ui->band3cmbtn);
|
||||
break;
|
||||
case(band6cm):
|
||||
showButton(ui->band6cmbtn);
|
||||
break;
|
||||
case(band13cm):
|
||||
showButton(ui->band13cmbtn);
|
||||
break;
|
||||
case(band23cm):
|
||||
showButton(ui->band23cmbtn);
|
||||
break;
|
||||
case(band70cm):
|
||||
showButton(ui->band70cmbtn);
|
||||
break;
|
||||
case(band2m):
|
||||
showButton(ui->band2mbtn);
|
||||
break;
|
||||
case(bandAir):
|
||||
showButton(ui->bandAirbtn);
|
||||
break;
|
||||
case(bandWFM):
|
||||
showButton(ui->bandWFMbtn);
|
||||
break;
|
||||
case(band4m):
|
||||
showButton(ui->band4mbtn);
|
||||
break;
|
||||
case(band6m):
|
||||
showButton(ui->band6mbtn);
|
||||
break;
|
||||
case(band10m):
|
||||
showButton(ui->band10mbtn);
|
||||
break;
|
||||
case(band12m):
|
||||
showButton(ui->band12mbtn);
|
||||
break;
|
||||
case(band15m):
|
||||
showButton(ui->band15mbtn);
|
||||
break;
|
||||
case(band17m):
|
||||
showButton(ui->band17mbtn);
|
||||
break;
|
||||
case(band20m):
|
||||
showButton(ui->band20mbtn);
|
||||
break;
|
||||
case(band30m):
|
||||
showButton(ui->band30mbtn);
|
||||
break;
|
||||
case(band40m):
|
||||
showButton(ui->band40mbtn);
|
||||
break;
|
||||
case(band60m):
|
||||
showButton(ui->band60mbtn);
|
||||
break;
|
||||
case(band80m):
|
||||
showButton(ui->band80mbtn);
|
||||
break;
|
||||
case(band160m):
|
||||
showButton(ui->band160mbtn);
|
||||
break;
|
||||
case(band630m):
|
||||
showButton(ui->band630mbtn);
|
||||
break;
|
||||
case(band2200m):
|
||||
showButton(ui->band2200mbtn);
|
||||
break;
|
||||
case(bandGen):
|
||||
showButton(ui->bandGenbtn);
|
||||
break;
|
||||
switch(band.band)
|
||||
{
|
||||
case(band3cm):
|
||||
showButton(ui->band3cmbtn);
|
||||
break;
|
||||
case(band6cm):
|
||||
showButton(ui->band6cmbtn);
|
||||
break;
|
||||
case(band13cm):
|
||||
showButton(ui->band13cmbtn);
|
||||
break;
|
||||
case(band23cm):
|
||||
showButton(ui->band23cmbtn);
|
||||
break;
|
||||
case(band70cm):
|
||||
showButton(ui->band70cmbtn);
|
||||
break;
|
||||
case(band2m):
|
||||
showButton(ui->band2mbtn);
|
||||
break;
|
||||
case(bandAir):
|
||||
showButton(ui->bandAirbtn);
|
||||
break;
|
||||
case(bandWFM):
|
||||
showButton(ui->bandWFMbtn);
|
||||
break;
|
||||
case(band4m):
|
||||
showButton(ui->band4mbtn);
|
||||
break;
|
||||
case(band6m):
|
||||
showButton(ui->band6mbtn);
|
||||
break;
|
||||
case(band10m):
|
||||
showButton(ui->band10mbtn);
|
||||
break;
|
||||
case(band12m):
|
||||
showButton(ui->band12mbtn);
|
||||
break;
|
||||
case(band15m):
|
||||
showButton(ui->band15mbtn);
|
||||
break;
|
||||
case(band17m):
|
||||
showButton(ui->band17mbtn);
|
||||
break;
|
||||
case(band20m):
|
||||
showButton(ui->band20mbtn);
|
||||
break;
|
||||
case(band30m):
|
||||
showButton(ui->band30mbtn);
|
||||
break;
|
||||
case(band40m):
|
||||
showButton(ui->band40mbtn);
|
||||
break;
|
||||
case(band60m):
|
||||
showButton(ui->band60mbtn);
|
||||
break;
|
||||
case(band80m):
|
||||
showButton(ui->band80mbtn);
|
||||
break;
|
||||
case(band160m):
|
||||
showButton(ui->band160mbtn);
|
||||
break;
|
||||
case(band630m):
|
||||
showButton(ui->band630mbtn);
|
||||
break;
|
||||
case(band2200m):
|
||||
showButton(ui->band2200mbtn);
|
||||
break;
|
||||
case(bandGen):
|
||||
showButton(ui->bandGenbtn);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -166,33 +167,11 @@ void bandbuttons::hideButton(QPushButton *b)
|
|||
b->setHidden(true);
|
||||
}
|
||||
|
||||
void bandbuttons::receiveBandStackReg(freqt freqGo, char mode, char filter, bool dataOn)
|
||||
{
|
||||
// This function is not currently used, but perhaps it should be?
|
||||
// Issue: wfmain is also waiting for a BSR and acts upon it.
|
||||
if(waitingForBSR)
|
||||
{
|
||||
qDebug(logGui()) << "Received band stack register and was waiting for one.";
|
||||
emit issueCmdF(cmdSetFreq, freqGo);
|
||||
emit issueCmd(cmdSetMode, mode);
|
||||
//emit issueCmd(cmdSetFilter, filter); // TODO
|
||||
if(dataOn)
|
||||
emit issueDelayedCommand(cmdSetDataModeOn);
|
||||
else
|
||||
emit issueDelayedCommand(cmdSetDataModeOff);
|
||||
|
||||
waitingForBSR = false;
|
||||
} else {
|
||||
qWarning(logGui()) << "Received a BSR but did not expect one.";
|
||||
}
|
||||
(void)filter;
|
||||
}
|
||||
|
||||
void bandbuttons::bandStackBtnClick(availableBands band)
|
||||
{
|
||||
if(haveRigCaps)
|
||||
if(rigCaps != Q_NULLPTR)
|
||||
{
|
||||
for (auto &b: rigCaps.bands)
|
||||
for (auto &b: rigCaps->bands)
|
||||
{
|
||||
if (b.band == band)
|
||||
{
|
||||
|
@ -215,16 +194,19 @@ void bandbuttons::bandStackBtnClick(availableBands band)
|
|||
void bandbuttons::jumpToBandWithoutBSR(availableBands band)
|
||||
{
|
||||
// Sometimes we do not have a BSR for these bands:
|
||||
for (auto &b: rigCaps.bands)
|
||||
if (rigCaps != Q_NULLPTR)
|
||||
{
|
||||
if (b.band == band)
|
||||
for (auto &b: rigCaps->bands)
|
||||
{
|
||||
freqt f;
|
||||
f.Hz = (b.lowFreq+b.highFreq)/2.0;
|
||||
f.MHzDouble = f.Hz/1000000.0;
|
||||
f.VFO = activeVFO;
|
||||
queue->add(priorityImmediate,queueItem(funcSelectedFreq,QVariant::fromValue<freqt>(f),false,false));
|
||||
break;
|
||||
if (b.band == band)
|
||||
{
|
||||
freqt f;
|
||||
f.Hz = (b.lowFreq+b.highFreq)/2.0;
|
||||
f.MHzDouble = f.Hz/1000000.0;
|
||||
f.VFO = activeVFO;
|
||||
queue->add(priorityImmediate,queueItem(funcSelectedFreq,QVariant::fromValue<freqt>(f),false,false));
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -51,9 +51,7 @@ signals:
|
|||
|
||||
|
||||
public slots:
|
||||
// These should come from connections to rigCommander:
|
||||
void acceptRigCaps(rigCapabilities rc);
|
||||
void receiveBandStackReg(freqt freqGo, char mode, char filter, bool dataOn);
|
||||
void receiveRigCaps(rigCapabilities* rc);
|
||||
|
||||
private slots:
|
||||
void on_band2200mbtn_clicked();
|
||||
|
@ -90,7 +88,7 @@ private:
|
|||
char bandStkRegCode;
|
||||
|
||||
bool waitingForBSR = false;
|
||||
rigCapabilities rigCaps;
|
||||
rigCapabilities* rigCaps=Q_NULLPTR;
|
||||
bool haveRigCaps = false;
|
||||
cachingQueue* queue;
|
||||
};
|
||||
|
|
|
@ -129,7 +129,7 @@ void cachingQueue::add(queuePriority prio ,queueItem item)
|
|||
// also insert an immediate command to get the current value "now" (removes the need to get rigstate)
|
||||
queueItem it=item;
|
||||
it.recurring=false;
|
||||
queue.insert(queue.cend(),priorityHighest, it);
|
||||
queue.insert(queue.cend(),priorityImmediate, it);
|
||||
qDebug() << "adding" << funcString[item.command] << "recurring" << item.recurring << "priority" << prio << "vfo" << item.vfo;
|
||||
}
|
||||
queue.insert(prio, item);
|
||||
|
@ -171,7 +171,7 @@ void cachingQueue::addUnique(queuePriority prio ,queueItem item)
|
|||
// also insert an immediate command to get the current value "now" (removes the need to get initial rigstate)
|
||||
queueItem it = item;
|
||||
it.recurring=false;
|
||||
queue.insert(queue.cend(),priorityHighest, it);
|
||||
queue.insert(queue.cend(),priorityImmediate, it);
|
||||
qDebug() << "adding unique" << funcString[item.command] << "recurring" << item.recurring << "priority" << prio << "vfo" << item.vfo;
|
||||
}
|
||||
queue.insert(prio, item);
|
||||
|
|
|
@ -118,7 +118,7 @@ public:
|
|||
QMultiMap <queuePriority,queueItem> getQueueItems();
|
||||
void lockMutex() {mutex.lock();}
|
||||
void unlockMutex() {mutex.unlock();}
|
||||
void setRigCaps(rigCapabilities* caps) { rigCaps = caps; emit rigCapsUpdated(rigCaps);}
|
||||
void setRigCaps(rigCapabilities* caps) { if (rigCaps != caps) { rigCaps = caps; emit rigCapsUpdated(rigCaps);} }
|
||||
rigCapabilities* getRigCaps() { return rigCaps; }
|
||||
};
|
||||
|
||||
|
|
|
@ -82,7 +82,7 @@ void cwSender::handleKeySpeed(unsigned char wpm)
|
|||
{
|
||||
if (wpm != ui->wpmSpin->value() && (wpm >= ui->wpmSpin->minimum()) && (wpm <= ui->wpmSpin->maximum()))
|
||||
{
|
||||
qInfo(logCW()) << "Received new key speed" << wpm;
|
||||
qDebug(logCW()) << "Received new key speed" << wpm;
|
||||
ui->wpmSpin->blockSignals(true);
|
||||
QMetaObject::invokeMethod(ui->wpmSpin, "setValue", Qt::QueuedConnection, Q_ARG(int, wpm));
|
||||
ui->wpmSpin->blockSignals(false);
|
||||
|
|
144
memories.cpp
144
memories.cpp
|
@ -4,16 +4,25 @@
|
|||
#include "memories.h"
|
||||
#include "ui_memories.h"
|
||||
|
||||
memories::memories(rigCapabilities rigCaps, bool slowLoad, QWidget *parent) :
|
||||
memories::memories(bool slowLoad, QWidget *parent) :
|
||||
QWidget(parent),
|
||||
slowLoad(slowLoad),
|
||||
rigCaps(rigCaps),
|
||||
ui(new Ui::memories)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
ui->table->setColumnCount(totalColumns);
|
||||
ui->table->editing(false);
|
||||
|
||||
this->setObjectName("RigCtlD");
|
||||
queue = cachingQueue::getInstance(this);
|
||||
rigCaps = queue->getRigCaps();
|
||||
|
||||
if (rigCaps == Q_NULLPTR)
|
||||
{
|
||||
// We have no rigCaps, so cannot continue
|
||||
return;
|
||||
}
|
||||
|
||||
QStringList headers;
|
||||
|
||||
/*
|
||||
|
@ -32,9 +41,9 @@ memories::memories(rigCapabilities rigCaps, bool slowLoad, QWidget *parent) :
|
|||
split << "OFF" << "ON";
|
||||
|
||||
dataModes << "OFF" << "DATA1";
|
||||
if (rigCaps.commands.contains(funcDATA2Mod))
|
||||
if (rigCaps->commands.contains(funcDATA2Mod))
|
||||
dataModes.append("DATA2");
|
||||
if (rigCaps.commands.contains(funcDATA3Mod))
|
||||
if (rigCaps->commands.contains(funcDATA3Mod))
|
||||
dataModes.append("DATA3");
|
||||
|
||||
filters << "FIL1" << "FIL2" << "FIL3";
|
||||
|
@ -42,7 +51,7 @@ memories::memories(rigCapabilities rigCaps, bool slowLoad, QWidget *parent) :
|
|||
duplexModes << "OFF" << "DUP-" << "DUP+" << "RPS";
|
||||
|
||||
toneModes << "OFF" << "TONE" << "TSQL";
|
||||
if (rigCaps.commands.contains(funcRepeaterDTCS))
|
||||
if (rigCaps->commands.contains(funcRepeaterDTCS))
|
||||
toneModes.append("DTCS");
|
||||
|
||||
|
||||
|
@ -72,12 +81,12 @@ memories::memories(rigCapabilities rigCaps, bool slowLoad, QWidget *parent) :
|
|||
|
||||
ui->group->blockSignals(true);
|
||||
ui->group->addItem("Memory Group",-1);
|
||||
for (int i=rigCaps.memStart;i<=rigCaps.memGroups;i++) {
|
||||
for (int i=rigCaps->memStart;i<=rigCaps->memGroups;i++) {
|
||||
|
||||
ui->group->addItem(QString("Group %0").arg(i,2,10,QChar('0')),i);
|
||||
}
|
||||
|
||||
if (rigCaps.satMemories && rigCaps.commands.contains(funcSatelliteMode)){
|
||||
if (rigCaps->satMemories && rigCaps->commands.contains(funcSatelliteMode)){
|
||||
ui->group->addItem("Satellite",MEMORY_SATGROUP);
|
||||
}
|
||||
|
||||
|
@ -88,13 +97,13 @@ memories::memories(rigCapabilities rigCaps, bool slowLoad, QWidget *parent) :
|
|||
dvsql.append(QString::number(i).rightJustified(2,'0'));
|
||||
}
|
||||
|
||||
if (rigCaps.commands.contains(funcVFOEqualAB)) {
|
||||
if (rigCaps->commands.contains(funcVFOEqualAB)) {
|
||||
vfos << "VFOA" << "VFOB";
|
||||
} else if (rigCaps.commands.contains(funcVFOEqualMS)) {
|
||||
} else if (rigCaps->commands.contains(funcVFOEqualMS)) {
|
||||
vfos << "MAIN" << "SUB";
|
||||
}
|
||||
|
||||
for (auto &mode: rigCaps.modes){
|
||||
for (auto &mode: rigCaps->modes){
|
||||
modes.append(mode.name);
|
||||
}
|
||||
|
||||
|
@ -131,7 +140,7 @@ void memories::rowAdded(int row)
|
|||
{
|
||||
// Find the next available memory number:
|
||||
|
||||
quint32 num=rigCaps.memStart;
|
||||
quint32 num=rigCaps->memStart;
|
||||
|
||||
/* This feels unnecessarily complicated, but here we are:
|
||||
* Set the memory number to 1
|
||||
|
@ -160,11 +169,11 @@ void memories::rowAdded(int row)
|
|||
if (i == rows.end())
|
||||
{
|
||||
// No gaps found so work on highest value found
|
||||
if ((ui->group->currentData().toInt() != 200 && rows.back() < groupMemories-1) || (ui->group->currentData().toInt() == MEMORY_SATGROUP && rows.back() < rigCaps.satMemories-1))
|
||||
if ((ui->group->currentData().toInt() != 200 && rows.back() < groupMemories-1) || (ui->group->currentData().toInt() == MEMORY_SATGROUP && rows.back() < rigCaps->satMemories-1))
|
||||
{
|
||||
num = rows.back() + 1;
|
||||
}
|
||||
else if (rows.front() == rigCaps.memStart)
|
||||
else if (rows.front() == rigCaps->memStart)
|
||||
{
|
||||
qWarning() << "Sorry no free memory slots found, please delete one first";
|
||||
ui->table->removeRow(row);
|
||||
|
@ -177,7 +186,9 @@ void memories::rowAdded(int row)
|
|||
QPushButton* recall = new QPushButton("Recall");
|
||||
ui->table->setCellWidget(row,columnRecall,recall);
|
||||
connect(recall, &QPushButton::clicked, this,
|
||||
[=]() { qInfo() << "Recalling" << num; emit recallMemory((quint32((ui->group->currentData().toUInt() << 16) | num)));});
|
||||
[=]() { qInfo() << "Recalling" << num;
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryMode,QVariant::fromValue<uint>((quint32((ui->group->currentData().toUInt() << 16) | num)))));
|
||||
});
|
||||
ui->table->model()->setData(ui->table->model()->index(row,columnNum),QString::number(num).rightJustified(3,'0'));
|
||||
// Set default values (where possible) for all other values:
|
||||
if (ui->table->item(row,columnSplit) == NULL) ui->table->model()->setData(ui->table->model()->index(row,columnSplit),split[0]);
|
||||
|
@ -219,7 +230,7 @@ void memories::rowAdded(int row)
|
|||
void memories::rowDeleted(quint32 mem)
|
||||
|
||||
{
|
||||
if (mem >= rigCaps.memStart && mem <= rigCaps.memories) {
|
||||
if (mem >= rigCaps->memStart && mem <= rigCaps->memories) {
|
||||
qInfo() << "Mem Deleted" << mem;
|
||||
memoryType currentMemory;
|
||||
if (ui->group->currentData().toInt() == MEMORY_SATGROUP)
|
||||
|
@ -230,7 +241,7 @@ void memories::rowDeleted(quint32 mem)
|
|||
currentMemory.group=ui->group->currentData().toInt();
|
||||
currentMemory.channel = mem;
|
||||
currentMemory.del = true;
|
||||
emit setMemory(currentMemory);
|
||||
queue->add(priorityImmediate,queueItem((currentMemory.sat?funcSatelliteMemory:funcMemoryContents),QVariant::fromValue<memoryType>(currentMemory)));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -315,7 +326,7 @@ void memories::on_table_cellChanged(int row, int col)
|
|||
currentMemory.frequency.Hz = (ui->table->item(row,columnFrequency) == NULL) ? 0 : quint64(ui->table->item(row,columnFrequency)->text().toDouble()*1000000.0);
|
||||
currentMemory.frequencyB.Hz = (ui->table->item(row,columnFrequencyB) == NULL) ? 0 : quint64(ui->table->item(row,columnFrequencyB)->text().toDouble()*1000000.0);
|
||||
|
||||
for (auto &m: rigCaps.modes){
|
||||
for (auto &m: rigCaps->modes){
|
||||
if (!ui->table->isColumnHidden(columnMode) && ui->table->item(row,columnMode) != NULL && ui->table->item(row,columnMode)->text()==m.name) {
|
||||
currentMemory.mode=m.reg;
|
||||
}
|
||||
|
@ -412,8 +423,7 @@ void memories::on_table_cellChanged(int row, int col)
|
|||
write=false;
|
||||
}
|
||||
if (write) {
|
||||
emit setMemory(currentMemory);
|
||||
|
||||
queue->add(priorityImmediate,queueItem((currentMemory.sat?funcSatelliteMemory:funcMemoryContents),QVariant::fromValue<memoryType>(currentMemory)));
|
||||
qInfo() << "Sending memory, group:" << currentMemory.group << "channel" << currentMemory.channel;
|
||||
// Set number to not be editable once written. Not sure why but this crashes?
|
||||
//ui->table->item(row,columnNum)->setFlags(ui->table->item(row,columnNum)->flags() & (~Qt::ItemIsEditable));
|
||||
|
@ -431,11 +441,11 @@ void memories::on_group_currentIndexChanged(int index)
|
|||
|
||||
// Special case for group 100 on the IC705!
|
||||
if (ui->group->currentData().toInt() == MEMORY_SATGROUP)
|
||||
groupMemories=rigCaps.satMemories;
|
||||
groupMemories=rigCaps->satMemories;
|
||||
else if (ui->group->currentData().toInt() == MEMORY_SHORTGROUP)
|
||||
groupMemories=3;
|
||||
else
|
||||
groupMemories=rigCaps.memories;
|
||||
groupMemories=rigCaps->memories;
|
||||
|
||||
ui->loadingMemories->setVisible(true);
|
||||
ui->table->setEditTriggers(QAbstractItemView::NoEditTriggers);
|
||||
|
@ -453,15 +463,21 @@ void memories::on_group_currentIndexChanged(int index)
|
|||
|
||||
QVector<memParserFormat> parser;
|
||||
|
||||
queue->add(priorityImmediate,queueItem(funcSatelliteMode,QVariant::fromValue<bool>(ui->group->currentData().toInt() == MEMORY_SATGROUP)));
|
||||
if (ui->group->currentData().toInt() == MEMORY_SATGROUP) {
|
||||
emit setSatelliteMode(true);
|
||||
parser = rigCaps.satParser;
|
||||
queue->del(funcSelectedFreq,false);
|
||||
queue->del(funcSelectedMode,false);
|
||||
queue->del(funcUnselectedFreq,true);
|
||||
queue->del(funcUnselectedMode,true);
|
||||
parser = rigCaps->satParser;
|
||||
} else {
|
||||
emit setSatelliteMode(false);
|
||||
parser = rigCaps.memParser;
|
||||
queue->addUnique(priorityMedium,funcSelectedFreq,true,false);
|
||||
queue->addUnique(priorityMedium,funcSelectedMode,true,false);
|
||||
queue->addUnique(priorityMedium,funcUnselectedFreq,true,true);
|
||||
queue->addUnique(priorityMedium,funcUnselectedMode,true,true);
|
||||
parser = rigCaps->memParser;
|
||||
}
|
||||
|
||||
|
||||
for (auto &parse: parser) {
|
||||
switch (parse.spec)
|
||||
{
|
||||
|
@ -879,38 +895,49 @@ void memories::on_group_currentIndexChanged(int index)
|
|||
|
||||
if (ui->group->currentData().toInt() == MEMORY_SATGROUP) {
|
||||
|
||||
lastMemoryRequested = rigCaps.memStart;
|
||||
lastMemoryRequested = rigCaps->memStart;
|
||||
if (slowLoad) {
|
||||
QTimer::singleShot(MEMORY_SLOWLOAD, this, [this]{ emit getSatMemory(lastMemoryRequested); });
|
||||
QTimer::singleShot(MEMORY_SLOWLOAD, this, [this]{
|
||||
queue->add(priorityImmediate,queueItem(funcSatelliteMemory,QVariant::fromValue<ushort>(lastMemoryRequested & 0xffff)));
|
||||
});
|
||||
} else {
|
||||
emit getSatMemory(lastMemoryRequested);
|
||||
queue->add(priorityImmediate,queueItem(funcSatelliteMemory,QVariant::fromValue<ushort>(lastMemoryRequested & 0xffff)));
|
||||
}
|
||||
} else {
|
||||
lastMemoryRequested = quint32((ui->group->currentData().toInt())<<16) | (rigCaps.memStart & 0xffff);
|
||||
lastMemoryRequested = quint32((ui->group->currentData().toInt())<<16) | (rigCaps->memStart & 0xffff);
|
||||
if (slowLoad) {
|
||||
QTimer::singleShot(MEMORY_SLOWLOAD, this, [this]{ emit getMemory(lastMemoryRequested); });
|
||||
QTimer::singleShot(MEMORY_SLOWLOAD, this, [this]{
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryContents,QVariant::fromValue<uint>(lastMemoryRequested)));
|
||||
});
|
||||
} else {
|
||||
// Is the current group attached to a particular band?
|
||||
for (auto &band: rigCaps.bands)
|
||||
for (auto &band: rigCaps->bands)
|
||||
{
|
||||
if (band.memGroup==ui->group->currentData().toInt())
|
||||
{
|
||||
emit setBand(band.band);
|
||||
queue->add(priorityImmediate,queueItem(funcBandStackReg,QVariant::fromValue<uchar>(band.band)));
|
||||
}
|
||||
}
|
||||
emit getMemory(lastMemoryRequested);
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryContents,QVariant::fromValue<uint>(lastMemoryRequested)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void memories::on_vfoMode_clicked()
|
||||
{
|
||||
emit vfoMode();
|
||||
queue->addUnique(priorityMedium,funcSelectedFreq,true,false);
|
||||
queue->addUnique(priorityMedium,funcSelectedMode,true,false);
|
||||
queue->addUnique(priorityMedium,funcUnselectedFreq,true,true);
|
||||
queue->addUnique(priorityMedium,funcUnselectedMode,true,true);
|
||||
}
|
||||
|
||||
void memories::on_memoryMode_clicked()
|
||||
{
|
||||
emit memoryMode();
|
||||
queue->add(priorityImmediate,funcMemoryMode);
|
||||
queue->del(funcSelectedFreq,false);
|
||||
queue->del(funcSelectedMode,false);
|
||||
queue->del(funcUnselectedFreq,true);
|
||||
queue->del(funcUnselectedMode,true);
|
||||
}
|
||||
|
||||
|
||||
|
@ -921,9 +948,9 @@ void memories::receiveMemory(memoryType mem)
|
|||
{
|
||||
lastMemoryRequested++;
|
||||
if (mem.sat)
|
||||
emit getSatMemory(lastMemoryRequested);
|
||||
queue->add(priorityImmediate,queueItem(funcSatelliteMemory,QVariant::fromValue<ushort>(lastMemoryRequested & 0xffff)));
|
||||
else
|
||||
emit getMemory(lastMemoryRequested);
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryContents,QVariant::fromValue<uint>(lastMemoryRequested)));
|
||||
timeoutTimer.start(MEMORY_TIMEOUT);
|
||||
}
|
||||
else if (mem.channel == groupMemories)
|
||||
|
@ -946,7 +973,8 @@ void memories::receiveMemory(memoryType mem)
|
|||
|
||||
for (int n = 0; n<ui->table->rowCount();n++)
|
||||
{
|
||||
if (ui->table->item(n,columnNum) != NULL && ui->table->item(n,columnNum)->text().toInt() == mem.channel && (rigCaps.memGroups < 2 || mem.sat || mem.group == ui->group->currentData().toInt()))
|
||||
if (ui->table->item(n,columnNum) != NULL && ui->table->item(n,columnNum)->text().toInt() == mem.channel &&
|
||||
(rigCaps->memGroups < 2 || mem.sat || mem.group == ui->group->currentData().toInt()))
|
||||
{
|
||||
row = n;
|
||||
break;
|
||||
|
@ -961,8 +989,10 @@ void memories::receiveMemory(memoryType mem)
|
|||
row=ui->table->rowCount()-1;
|
||||
QPushButton* recall = new QPushButton("Recall");
|
||||
ui->table->setCellWidget(row,columnRecall,recall);
|
||||
connect(recall, &QPushButton::clicked, this,
|
||||
[=]() { qInfo() << "Recalling" << mem.channel; emit recallMemory((quint32((ui->group->currentData().toUInt() << 16) | mem.channel)));});
|
||||
connect(recall, &QPushButton::clicked, this, [=]() {
|
||||
qInfo() << "Recalling" << mem.channel;
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryMode,QVariant::fromValue<uint>(quint32((ui->group->currentData().toUInt() << 16) | mem.channel))));
|
||||
});
|
||||
}
|
||||
|
||||
ui->table->model()->setData(ui->table->model()->index(row,columnNum),QString::number(mem.channel & 0xffff).rightJustified(3,'0'));
|
||||
|
@ -981,12 +1011,12 @@ void memories::receiveMemory(memoryType mem)
|
|||
ui->table->model()->setData(ui->table->model()->index(row,columnFrequencyB),QString::number(double(mem.frequencyB.Hz/1000000.0),'f',3));
|
||||
validData++;
|
||||
|
||||
for (uint i=0;i<rigCaps.modes.size();i++)
|
||||
for (uint i=0;i<rigCaps->modes.size();i++)
|
||||
{
|
||||
if (mem.mode == rigCaps.modes[i].reg)
|
||||
if (mem.mode == rigCaps->modes[i].reg)
|
||||
validData += updateCombo(modes,row,columnMode,i);
|
||||
|
||||
if (mem.modeB == rigCaps.modes[i].reg)
|
||||
if (mem.modeB == rigCaps->modes[i].reg)
|
||||
validData += updateCombo(modes,row,columnModeB,i);
|
||||
}
|
||||
|
||||
|
@ -1094,10 +1124,11 @@ void memories::receiveMemory(memoryType mem)
|
|||
|
||||
if (validData < visibleColumns) {
|
||||
qInfo(logRig()) << "Memory" << mem.channel << "Received valid data for" << validData << "columns, " << "expected" << visibleColumns << "requesting again";
|
||||
if (mem.sat)
|
||||
emit getSatMemory(mem.channel & 0xffff);
|
||||
else
|
||||
emit getMemory(quint32((ui->group->currentData().toInt())<<16) | (mem.channel & 0xffff));
|
||||
if (mem.sat) {
|
||||
queue->add(priorityImmediate,queueItem(funcSatelliteMemory,QVariant::fromValue<ushort>(mem.channel & 0xffff)));
|
||||
} else {
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryContents,QVariant::fromValue<uint>(mem.channel & 0xffff)));
|
||||
}
|
||||
retries++;
|
||||
}
|
||||
|
||||
|
@ -1155,14 +1186,15 @@ bool memories::checkASCII(QString str)
|
|||
|
||||
|
||||
void memories::timeout()
|
||||
{
|
||||
{
|
||||
if (timeoutCount < 10 )
|
||||
{
|
||||
qInfo(logRig()) << "Timeout receiving memory:" << (lastMemoryRequested & 0xffff) << "in group" << (lastMemoryRequested >> 16 & 0xffff);
|
||||
if (ui->group->currentData().toInt() == MEMORY_SATGROUP)
|
||||
emit getSatMemory(lastMemoryRequested);
|
||||
else
|
||||
emit getMemory(lastMemoryRequested);
|
||||
if (ui->group->currentData().toInt() == MEMORY_SATGROUP) {
|
||||
queue->add(priorityImmediate,queueItem(funcSatelliteMemory,QVariant::fromValue<ushort>(lastMemoryRequested & 0xffff)));
|
||||
} else {
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryContents,QVariant::fromValue<uint>(lastMemoryRequested)));
|
||||
}
|
||||
timeoutTimer.start(MEMORY_TIMEOUT);
|
||||
timeoutCount++;
|
||||
} else {
|
||||
|
@ -1241,8 +1273,10 @@ void memories::on_csvImport_clicked()
|
|||
ui->table->insertRow(rownum);
|
||||
QPushButton* recall = new QPushButton("Recall");
|
||||
ui->table->setCellWidget(rownum,columnRecall,recall);
|
||||
connect(recall, &QPushButton::clicked, this,
|
||||
[=]() { qInfo() << "Recalling" << row[0].toInt(); emit recallMemory((quint32((ui->group->currentData().toUInt() << 16) | row[0].toInt())));});
|
||||
connect(recall, &QPushButton::clicked, this, [=]() {
|
||||
qInfo() << "Recalling" << row[0].toInt();
|
||||
queue->add(priorityImmediate,queueItem(funcMemoryMode,QVariant::fromValue<uint>(quint32((ui->group->currentData().toUInt() << 16) | row[0].toInt()))));
|
||||
});
|
||||
}
|
||||
// rownum is now the row we need to work on.
|
||||
|
||||
|
|
19
memories.h
19
memories.h
|
@ -14,6 +14,7 @@
|
|||
#include "tablewidget.h"
|
||||
#include "wfviewtypes.h"
|
||||
#include "rigidentities.h"
|
||||
#include "cachingqueue.h"
|
||||
|
||||
#define MEMORY_TIMEOUT 1000
|
||||
#define MEMORY_SLOWLOAD 500
|
||||
|
@ -29,23 +30,10 @@ class memories : public QWidget
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit memories(rigCapabilities rigCaps,bool slowLoad=false,QWidget *parent = nullptr);
|
||||
explicit memories(bool slowLoad=false,QWidget *parent = nullptr);
|
||||
~memories();
|
||||
void populate();
|
||||
|
||||
signals:
|
||||
void setMemory(memoryType mem);
|
||||
void getMemory(quint32 mem);
|
||||
void setSatelliteMode(bool en);
|
||||
void getSatMemory(quint32 mem);
|
||||
void recallMemory(quint32 mem);
|
||||
void clearMemory(quint32 mem);
|
||||
void clearSatMemory(quint32 mem);
|
||||
void memoryMode();
|
||||
void vfoMode();
|
||||
void setBand(char band);
|
||||
|
||||
|
||||
private slots:
|
||||
void on_table_cellChanged(int row, int col);
|
||||
void on_group_currentIndexChanged(int index);
|
||||
|
@ -64,6 +52,7 @@ private slots:
|
|||
void timeout();
|
||||
|
||||
private:
|
||||
cachingQueue* queue;
|
||||
quint32 groupMemories=0;
|
||||
quint32 lastMemoryRequested=0;
|
||||
QTimer timeoutTimer;
|
||||
|
@ -175,7 +164,7 @@ private:
|
|||
tableEditor* r1EditorB = Q_NULLPTR;
|
||||
tableEditor* r2EditorB = Q_NULLPTR;
|
||||
|
||||
rigCapabilities rigCaps;
|
||||
rigCapabilities* rigCaps = Q_NULLPTR;
|
||||
|
||||
Ui::memories *ui;
|
||||
bool extended = false;
|
||||
|
|
|
@ -16,6 +16,12 @@
|
|||
pttyHandler::pttyHandler(QString pty, QObject* parent) : QObject(parent)
|
||||
{
|
||||
//constructor
|
||||
|
||||
this->setObjectName("pttyHandler");
|
||||
queue = cachingQueue::getInstance(this);
|
||||
connect(queue, SIGNAL(rigCapsUpdated(rigCapabilities*)), this, SLOT(receiveRigCaps(rigCapabilities*)));
|
||||
rigCaps = queue->getRigCaps();
|
||||
|
||||
if (pty == "" || pty.toLower() == "none")
|
||||
{
|
||||
// Just return if pty is not configured.
|
||||
|
@ -222,7 +228,7 @@ void pttyHandler::receiveDataIn(int fd) {
|
|||
qInfo(logSerial()) << "pty remote CI-V changed:" << QString("0x%1").arg((quint8)civId,0,16);
|
||||
}
|
||||
// filter C-IV transceive command before forwarding on.
|
||||
if (inPortData.contains(rigCaps.transceiveCommand))
|
||||
if (rigCaps != Q_NULLPTR && inPortData.contains(rigCaps->transceiveCommand))
|
||||
{
|
||||
//qInfo(logSerial()) << "Filtered transceive command";
|
||||
//printHex(inPortData, false, true);
|
||||
|
@ -337,10 +343,12 @@ void pttyHandler::printHex(const QByteArray& pdata, bool printVert, bool printHo
|
|||
qDebug(logSerial()) << "----- End hex dump -----";
|
||||
}
|
||||
|
||||
void pttyHandler::receiveFoundRigID(rigCapabilities rigCaps) {
|
||||
this->rigCaps = rigCaps;
|
||||
qInfo(logSerial) << "Received rigCapabilities for" << rigCaps.modelName;
|
||||
|
||||
void pttyHandler::receiveRigCaps(rigCapabilities* caps)
|
||||
{
|
||||
if (caps != Q_NULLPTR) {
|
||||
qInfo(logSerial()) << "Got rigcaps for:" << caps->modelName;
|
||||
}
|
||||
this->rigCaps = caps;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
|
||||
#include "rigidentities.h"
|
||||
#include "wfviewtypes.h"
|
||||
#include "cachingqueue.h"
|
||||
|
||||
// This class abstracts the comm port in a useful way and connects to
|
||||
// the command creator and command parser.
|
||||
|
@ -30,7 +31,7 @@ private slots:
|
|||
void receiveDataIn(int fd); // from physical port
|
||||
void receiveDataFromRigToPtty(const QByteArray& data);
|
||||
void debugThis();
|
||||
void receiveFoundRigID(rigCapabilities rigCaps);
|
||||
void receiveRigCaps(rigCapabilities* rigCaps);
|
||||
|
||||
signals:
|
||||
void haveTextMessage(QString message); // status, debug only
|
||||
|
@ -73,7 +74,8 @@ private:
|
|||
bool disableTransceive = false;
|
||||
QSocketNotifier *ptReader = Q_NULLPTR;
|
||||
quint8 civId=0;
|
||||
rigCapabilities rigCaps;
|
||||
rigCapabilities* rigCaps = Q_NULLPTR;
|
||||
cachingQueue* queue = Q_NULLPTR;
|
||||
};
|
||||
|
||||
#endif // PTTYHANDLER_H
|
||||
|
|
|
@ -95,8 +95,6 @@ void rigCommander::commSetup(QHash<unsigned char,QString> rigList, unsigned char
|
|||
connect(this, SIGNAL(getMoreDebug()), comm, SLOT(debugThis()));
|
||||
connect(this, SIGNAL(getMoreDebug()), ptty, SLOT(debugThis()));
|
||||
|
||||
connect(this, SIGNAL(discoveredRigID(rigCapabilities)), ptty, SLOT(receiveFoundRigID(rigCapabilities)));
|
||||
|
||||
commonSetup();
|
||||
}
|
||||
|
||||
|
@ -170,8 +168,6 @@ void rigCommander::commSetup(QHash<unsigned char,QString> rigList, unsigned char
|
|||
connect(ptty, SIGNAL(havePortError(errorType)), this, SLOT(handlePortError(errorType)));
|
||||
connect(this, SIGNAL(getMoreDebug()), ptty, SLOT(debugThis()));
|
||||
|
||||
connect(this, SIGNAL(discoveredRigID(rigCapabilities)), ptty, SLOT(receiveFoundRigID(rigCapabilities)));
|
||||
|
||||
connect(udp, SIGNAL(requestRadioSelection(QList<radio_cap_packet>)), this, SLOT(radioSelection(QList<radio_cap_packet>)));
|
||||
connect(udp, SIGNAL(setRadioUsage(quint8, bool, quint8, QString, QString)), this, SLOT(radioUsage(quint8, bool, quint8, QString, QString)));
|
||||
connect(this, SIGNAL(selectedRadio(quint8)), udp, SLOT(setCurrentRadio(quint8)));
|
||||
|
@ -2546,7 +2542,7 @@ void rigCommander::receiveCommand(funcs func, QVariant value, uchar vfo)
|
|||
// Currently only used for RIT (I think)
|
||||
bool isNegative = false;
|
||||
short val = value.value<short>();
|
||||
qInfo() << "Setting rit to " << val;
|
||||
qDebug() << "Setting RIT to " << val;
|
||||
if(val < 0)
|
||||
{
|
||||
isNegative = true;
|
||||
|
|
|
@ -310,7 +310,9 @@ void rigCtlD::stopServer()
|
|||
|
||||
void rigCtlClient::receiveRigCaps(rigCapabilities* caps)
|
||||
{
|
||||
qInfo(logRigCtlD()) << "Got rigcaps for:" << caps->modelName;
|
||||
if (caps != Q_NULLPTR) {
|
||||
qInfo(logRigCtlD()) << "Got rigcaps for:" << caps->modelName;
|
||||
}
|
||||
this->rigCaps = caps;
|
||||
}
|
||||
|
||||
|
|
|
@ -278,7 +278,6 @@ public:
|
|||
|
||||
int startServer(qint16 port);
|
||||
void stopServer();
|
||||
rigCapabilities* rigCaps;
|
||||
|
||||
signals:
|
||||
void onStarted();
|
||||
|
@ -342,7 +341,7 @@ protected:
|
|||
|
||||
private:
|
||||
cachingQueue* queue;
|
||||
rigCapabilities* rigCaps;
|
||||
rigCapabilities* rigCaps=Q_NULLPTR;
|
||||
rigCtlD* parent;
|
||||
bool chkVfoEecuted=false;
|
||||
unsigned long crcTable[256];
|
||||
|
|
|
@ -490,8 +490,8 @@ Commands\93\Max=1
|
|||
Commands\93\Command29=false
|
||||
Commands\94\Type=RIT Frequency
|
||||
Commands\94\String=\\x21\\x00
|
||||
Commands\94\Min=0
|
||||
Commands\94\Max=0
|
||||
Commands\94\Min=-999
|
||||
Commands\94\Max=999
|
||||
Commands\94\Command29=false
|
||||
Commands\95\Type=RIT Status
|
||||
Commands\95\String=\\x21\\x01
|
||||
|
|
|
@ -325,8 +325,8 @@ Commands\60\Max=0
|
|||
Commands\60\Command29=false
|
||||
Commands\61\Type=RIT Frequency
|
||||
Commands\61\String=\\x21\\x01
|
||||
Commands\61\Min=0
|
||||
Commands\61\Max=1
|
||||
Commands\61\Min=-999
|
||||
Commands\61\Max=999
|
||||
Commands\61\Command29=false
|
||||
Commands\62\Type=Selected Freq
|
||||
Commands\62\String=\\x25\\x00
|
||||
|
|
|
@ -335,8 +335,8 @@ Commands\62\Max=0
|
|||
Commands\62\Command29=false
|
||||
Commands\63\Type=RIT Frequency
|
||||
Commands\63\String=\\x21\\x01
|
||||
Commands\63\Min=0
|
||||
Commands\63\Max=1
|
||||
Commands\63\Min=-999
|
||||
Commands\63\Max=999
|
||||
Commands\63\Command29=false
|
||||
Commands\64\Type=Selected Freq
|
||||
Commands\64\String=\\x25\\x00
|
||||
|
|
|
@ -550,8 +550,8 @@ Commands\105\Max=1
|
|||
Commands\105\Command29=false
|
||||
Commands\106\Type=RIT Frequency
|
||||
Commands\106\String=\\x21\\x00
|
||||
Commands\106\Min=0
|
||||
Commands\106\Max=0
|
||||
Commands\106\Min=-999
|
||||
Commands\106\Max=999
|
||||
Commands\106\Command29=false
|
||||
Commands\107\Type=RIT Status
|
||||
Commands\107\String=\\x21\\x01
|
||||
|
@ -822,13 +822,13 @@ Periodic\32\Command=VFO Dual Watch
|
|||
Periodic\32\VFO=0
|
||||
Periodic\size=32
|
||||
Spans\1\Num=0
|
||||
Spans\1\Name=±2.5 KHz
|
||||
Spans\1\Name=±2.5 KHz
|
||||
Spans\1\Freq=2500
|
||||
Spans\2\Num=1
|
||||
Spans\2\Name=±5 KHz
|
||||
Spans\2\Name=±5 KHz
|
||||
Spans\2\Freq=5000
|
||||
Spans\3\Num=2
|
||||
Spans\3\Name=±10 KHz
|
||||
Spans\3\Name=±10 KHz
|
||||
Spans\3\Freq=10000
|
||||
Spans\4\Num=3
|
||||
Spans\4\Name=±25 KHz
|
||||
|
@ -837,13 +837,13 @@ Spans\5\Num=4
|
|||
Spans\5\Name=±50 KHz
|
||||
Spans\5\Freq=50000
|
||||
Spans\6\Num=5
|
||||
Spans\6\Name=±100 KHz
|
||||
Spans\6\Name=±100 KHz
|
||||
Spans\6\Freq=100000
|
||||
Spans\7\Num=6
|
||||
Spans\7\Name=±250 KHz
|
||||
Spans\7\Name=±250 KHz
|
||||
Spans\7\Freq=250000
|
||||
Spans\8\Num=7
|
||||
Spans\8\Name=±500 KHz
|
||||
Spans\8\Name=±500 KHz
|
||||
Spans\8\Freq=500000
|
||||
Spans\size=8
|
||||
Inputs\1\Num=0
|
||||
|
|
|
@ -560,8 +560,8 @@ Commands\107\Max=1
|
|||
Commands\107\Command29=false
|
||||
Commands\108\Type=RIT Frequency
|
||||
Commands\108\String=\\x21\\x00
|
||||
Commands\108\Min=0
|
||||
Commands\108\Max=0
|
||||
Commands\108\Min=-999
|
||||
Commands\108\Max=999
|
||||
Commands\108\Command29=false
|
||||
Commands\109\Type=RIT Status
|
||||
Commands\109\String=\\x21\\x01
|
||||
|
|
|
@ -607,43 +607,43 @@ Periodic\22\Command=Unselected Mode
|
|||
Periodic\22\VFO=1
|
||||
Periodic\size=22
|
||||
Spans\1\Num=0
|
||||
Spans\1\Name=2.5 KHz
|
||||
Spans\1\Name=±2.5 KHz
|
||||
Spans\1\Freq=2500
|
||||
Spans\2\Num=0
|
||||
Spans\2\Name=5 MHz
|
||||
Spans\2\Name=±5 MHz
|
||||
Spans\2\Freq=5000000
|
||||
Spans\3\Num=0
|
||||
Spans\3\Name=10 MHz
|
||||
Spans\3\Name=±10 MHz
|
||||
Spans\3\Freq=10000000
|
||||
Spans\4\Num=0
|
||||
Spans\4\Name=25 MHz
|
||||
Spans\4\Name=±25 MHz
|
||||
Spans\4\Freq=25000000
|
||||
Spans\5\Num=1
|
||||
Spans\5\Name=5 KHz
|
||||
Spans\5\Name=±5 KHz
|
||||
Spans\5\Freq=5000
|
||||
Spans\6\Num=2
|
||||
Spans\6\Name=10 KHz
|
||||
Spans\6\Name=±10 KHz
|
||||
Spans\6\Freq=10000
|
||||
Spans\7\Num=3
|
||||
Spans\7\Name=25 KHz
|
||||
Spans\7\Name=±25 KHz
|
||||
Spans\7\Freq=25000
|
||||
Spans\8\Num=4
|
||||
Spans\8\Name=50 KHz
|
||||
Spans\8\Name=±50 KHz
|
||||
Spans\8\Freq=50000
|
||||
Spans\9\Num=5
|
||||
Spans\9\Name=100 KHz
|
||||
Spans\9\Name=±100 KHz
|
||||
Spans\9\Freq=100000
|
||||
Spans\10\Num=6
|
||||
Spans\10\Name=250 KHz
|
||||
Spans\10\Name=±250 KHz
|
||||
Spans\10\Freq=250000
|
||||
Spans\11\Num=7
|
||||
Spans\11\Name=500 KHz
|
||||
Spans\11\Name=±500 KHz
|
||||
Spans\11\Freq=500000
|
||||
Spans\12\Num=8
|
||||
Spans\12\Name=1 MHz
|
||||
Spans\12\Name=±1 MHz
|
||||
Spans\12\Freq=1000000
|
||||
Spans\13\Num=9
|
||||
Spans\13\Name=2.5 MHz
|
||||
Spans\13\Name=±2.5 MHz
|
||||
Spans\13\Freq=2500000
|
||||
Spans\size=13
|
||||
Inputs\1\Num=0
|
||||
|
|
|
@ -515,8 +515,8 @@ Commands\98\Max=1
|
|||
Commands\98\Command29=false
|
||||
Commands\99\Type=RIT Frequency
|
||||
Commands\99\String=\\x21\\x00
|
||||
Commands\99\Min=0
|
||||
Commands\99\Max=0
|
||||
Commands\99\Min=-999
|
||||
Commands\99\Max=999
|
||||
Commands\99\Command29=false
|
||||
Commands\100\Type=RIT Status
|
||||
Commands\100\String=\\x21\\x01
|
||||
|
|
|
@ -1348,7 +1348,7 @@ void spectrumScope::receiveMode(modeInfo m)
|
|||
if (mode.reg != m.reg || m.filter != mode.filter || m.data != mode.data)
|
||||
{
|
||||
|
||||
qInfo(logSystem()) << __func__ << QString("Received new mode for %0: %1 (%2) filter:%3 data:%4")
|
||||
qDebug(logSystem()) << __func__ << QString("Received new mode for %0: %1 (%2) filter:%3 data:%4")
|
||||
.arg((vfo?"Sub":"Main")).arg(QString::number(m.mk,16)).arg(m.name).arg(m.filter).arg(m.data) ;
|
||||
|
||||
if (mode.mk != m.mk) {
|
||||
|
@ -1494,7 +1494,7 @@ void spectrumScope::receiveCwPitch(uchar pitch)
|
|||
if (p != this->cwPitch)
|
||||
{
|
||||
passbandCenterFrequency = p / 2000000.0;
|
||||
qInfo(logSystem()) << QString("%0 Received new CW Pitch %1 Hz was %2 (center freq %3 MHz)").arg((vfo?"Sub":"Main")).arg(p).arg(cwPitch).arg(passbandCenterFrequency);
|
||||
qDebug(logSystem()) << QString("%0 Received new CW Pitch %1 Hz was %2 (center freq %3 MHz)").arg((vfo?"Sub":"Main")).arg(p).arg(cwPitch).arg(passbandCenterFrequency);
|
||||
this->cwPitch = p;
|
||||
}
|
||||
}
|
||||
|
@ -1506,7 +1506,7 @@ void spectrumScope::receivePassband(quint16 pass)
|
|||
if (passbandWidth != pb) {
|
||||
passbandWidth = pb;
|
||||
//trxadj->updatePassband(pass);
|
||||
qInfo(logSystem()) << QString("%0 Received new IF Filter/Passband %1 Hz").arg(vfo?"Sub":"Main").arg(pass);
|
||||
qDebug(logSystem()) << QString("%0 Received new IF Filter/Passband %1 Hz").arg(vfo?"Sub":"Main").arg(pass);
|
||||
emit showStatusBarText(QString("%0 IF filter width %1 Hz (%2 MHz)").arg(vfo?"Sub":"Main").arg(pass).arg(passbandWidth));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -33,11 +33,6 @@ transceiverAdjustments::transceiverAdjustments(QWidget *parent) :
|
|||
|
||||
transceiverAdjustments::~transceiverAdjustments()
|
||||
{
|
||||
rigCaps.inputs.clear();
|
||||
rigCaps.preamps.clear();
|
||||
rigCaps.attenuators.clear();
|
||||
rigCaps.antennas.clear();
|
||||
|
||||
delete ui;
|
||||
}
|
||||
|
||||
|
|
|
@ -84,23 +84,6 @@ void usbController::init(QMutex* mut,usbDevMap* devs ,QVector<BUTTON>* buts,QVec
|
|||
// We need to make sure that all buttons/knobs have a command assigned, this is a fairly expensive operation
|
||||
// Perform a deep copy of the command to ensure that each controller is using a unique copy of the command.
|
||||
|
||||
#ifdef HID_API_VERSION_MAJOR
|
||||
if (HID_API_VERSION == HID_API_MAKE_VERSION(hid_version()->major, hid_version()->minor, hid_version()->patch)) {
|
||||
qInfo(logUsbControl) << QString("Compile-time version matches runtime version of hidapi: %0.%1.%2")
|
||||
.arg(hid_version()->major)
|
||||
.arg(hid_version()->minor)
|
||||
.arg(hid_version()->patch);
|
||||
}
|
||||
else {
|
||||
qInfo(logUsbControl) << QString("Compile-time and runtime versions of hidapi do not match (%0.%1.%2 vs %0.%1.%2)")
|
||||
.arg(HID_API_VERSION_MAJOR)
|
||||
.arg(HID_API_VERSION_MINOR)
|
||||
.arg(HID_API_VERSION_PATCH)
|
||||
.arg(hid_version()->major)
|
||||
.arg(hid_version()->minor)
|
||||
.arg(hid_version()->patch);
|
||||
}
|
||||
#endif
|
||||
hidStatus = hid_init();
|
||||
if (hidStatus) {
|
||||
qInfo(logUsbControl()) << "Failed to intialize HID Devices";
|
||||
|
@ -1252,7 +1235,7 @@ void usbController::sendRequest(USBDEVICE *dev, usbFeatureType feature, int val,
|
|||
{
|
||||
|
||||
myImage.save(&butBuffer, "BMP");
|
||||
quint16 payloadLen = dev->type.maxPayload - sizeof(streamdeck_v1_image_header);
|
||||
quint16 payloadLen = dev->type.maxPayload - quint16(sizeof(streamdeck_v1_image_header));
|
||||
|
||||
if (dev->type.model == usbDeviceType::StreamDeckOriginal) {
|
||||
// Special case for buttons on original StreamDeck
|
||||
|
|
796
wfmain.cpp
796
wfmain.cpp
Plik diff jest za duży
Load Diff
13
wfmain.h
13
wfmain.h
|
@ -35,7 +35,7 @@
|
|||
#include "calibrationwindow.h"
|
||||
#include "repeatersetup.h"
|
||||
#include "satellitesetup.h"
|
||||
#include "transceiveradjustments.h"
|
||||
//#include "transceiveradjustments.h"
|
||||
#include "cwsender.h"
|
||||
#include "bandbuttons.h"
|
||||
#include "frequencyinputwidget.h"
|
||||
|
@ -406,8 +406,7 @@ private slots:
|
|||
void receivePreamp(unsigned char pre, uchar vfo);
|
||||
void receiveAttenuator(unsigned char att, uchar vfo);
|
||||
void receiveAntennaSel(unsigned char ant, bool rx,uchar vfo);
|
||||
void receiveRigID(rigCapabilities rigCaps);
|
||||
void receiveFoundRigID(rigCapabilities rigCaps);
|
||||
|
||||
void receivePortError(errorType err);
|
||||
void receiveStatusUpdate(networkStatus status);
|
||||
void receiveNetworkAudioLevels(networkAudioLevels l);
|
||||
|
@ -497,6 +496,9 @@ private slots:
|
|||
void on_dualWatchBtn_toggled(bool en);
|
||||
|
||||
void receiveElapsed(bool sub, qint64 us);
|
||||
void connectionTimeout();
|
||||
void receiveRigCaps(rigCapabilities* caps);
|
||||
|
||||
|
||||
private:
|
||||
Ui::wfmain *ui; // Main UI
|
||||
|
@ -514,6 +516,7 @@ private:
|
|||
QTimer logCheckingTimer;
|
||||
int logCheckingOldPosition = 0;
|
||||
QTimer ATUCheckTimer;
|
||||
QTimer ConnectionTimer;
|
||||
|
||||
QCustomPlot *plot; // line plot
|
||||
QCustomPlot *wf; // waterfall image
|
||||
|
@ -710,7 +713,7 @@ private:
|
|||
int oldFreqDialVal;
|
||||
|
||||
QHash<unsigned char,QString> rigList;
|
||||
rigCapabilities rigCaps;
|
||||
rigCapabilities* rigCaps = Q_NULLPTR;
|
||||
|
||||
rigInput currentModSrc[4];
|
||||
|
||||
|
@ -726,7 +729,7 @@ private:
|
|||
calibrationWindow *cal = Q_NULLPTR;
|
||||
repeaterSetup *rpt = Q_NULLPTR;
|
||||
satelliteSetup *sat = Q_NULLPTR;
|
||||
transceiverAdjustments *trxadj = Q_NULLPTR;
|
||||
//transceiverAdjustments *trxadj = Q_NULLPTR;
|
||||
cwSender *cw = Q_NULLPTR;
|
||||
controllerSetup* usbWindow = Q_NULLPTR;
|
||||
aboutbox *abtBox = Q_NULLPTR;
|
||||
|
|
915
wfmain.ui
915
wfmain.ui
|
@ -6,8 +6,8 @@
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>956</width>
|
||||
<height>384</height>
|
||||
<width>942</width>
|
||||
<height>327</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="acceptDrops">
|
||||
|
@ -48,6 +48,19 @@
|
|||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="scopeSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="vfoLayout">
|
||||
<property name="spacing">
|
||||
|
@ -58,7 +71,7 @@
|
|||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_15">
|
||||
<layout class="QVBoxLayout" name="metersVerticalLayout">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
|
@ -283,84 +296,12 @@
|
|||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_8">
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
||||
<item>
|
||||
<spacer name="verticalSpacer_17">
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="rfGainSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>RX RF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>RF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Receiver RF Gain</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_10">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>RF</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_8">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
|
@ -369,446 +310,381 @@
|
|||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_9">
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_18">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="afGainSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>RX AF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>AF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Receive Audio Level. Sets rig volume on USB rigs, and sets PC volume on LAN rigs.</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_11">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>AF</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_9">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_10">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_19">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="sqlSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Squelch</p></body></html></string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>Squelch</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Squelch control. Top is fully-muted, bottom is wide open.</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_21">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>SQ</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_10">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_12">
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_20">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="txPowerSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Transmit Power</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>Transmit Power</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Transmit power level</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_23">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TX</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_11">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_13">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_21">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="micGainSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Mic Gain</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>Transmit Audio Gain</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Sets the gain for the transmit audio source, for example mic gain or accessory port gain</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="modSliderLbl">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Mic</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_12">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_29">
|
||||
<item>
|
||||
<spacer name="verticalSpacer_26">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="monitorSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Set the rado monitor level</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="monitorLabel">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="mouseTracking">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string><a href='#'>Mon</a></string>
|
||||
</property>
|
||||
<property name="textFormat">
|
||||
<enum>Qt::AutoText</enum>
|
||||
</property>
|
||||
<property name="openExternalLinks">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::LinksAccessibleByMouse</set>
|
||||
</property>
|
||||
</widget>
|
||||
<layout class="QHBoxLayout" name="levelsHorizontalLayout">
|
||||
<property name="spacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetMinimumSize</enum>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="rfVerticalLayout">
|
||||
<property name="spacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetDefaultConstraint</enum>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QSlider" name="rfGainSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>RX RF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>RF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Receiver RF Gain</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_10">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>RF</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="afVerticalLayout">
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QSlider" name="afGainSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>RX AF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>AF Gain</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Receive Audio Level. Sets rig volume on USB rigs, and sets PC volume on LAN rigs.</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_11">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>AF</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="sqVerticalLayout">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QSlider" name="sqlSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Squelch</p></body></html></string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>Squelch</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Squelch control. Top is fully-muted, bottom is wide open.</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_21">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>SQ</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="micVerticalLayout">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QSlider" name="micGainSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Mic Gain</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>Transmit Audio Gain</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Sets the gain for the transmit audio source, for example mic gain or accessory port gain</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="modSliderLbl">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Mic</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="txVerticalLayout">
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QSlider" name="txPowerSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Transmit Power</string>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>Transmit Power</string>
|
||||
</property>
|
||||
<property name="accessibleDescription">
|
||||
<string>Transmit power level</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_23">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TX</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="monVerticalLayout">
|
||||
<item>
|
||||
<widget class="QSlider" name="monitorSlider">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Set the rado monitor level</string>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>255</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="monitorLabel">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>15</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="mouseTracking">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string><a href='#'>Mon</a></string>
|
||||
</property>
|
||||
<property name="textFormat">
|
||||
<enum>Qt::AutoText</enum>
|
||||
</property>
|
||||
<property name="openExternalLinks">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="textInteractionFlags">
|
||||
<set>Qt::LinksAccessibleByMouse</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
|
@ -820,7 +696,7 @@
|
|||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_16">
|
||||
<layout class="QVBoxLayout" name="buttonsVerticalLayout">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
|
@ -1095,22 +971,6 @@
|
|||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Minimum</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
|
@ -1245,7 +1105,6 @@
|
|||
<widget class="QPushButton" name="exitBtn">
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>50</weight>
|
||||
<bold>false</bold>
|
||||
</font>
|
||||
</property>
|
||||
|
|
14
wfview.pro
14
wfview.pro
|
@ -164,7 +164,7 @@ CONFIG(debug, release|debug) {
|
|||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\qcustomplot\x64\qcustomplotd2.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\portaudio\msvc\x64\Debug\portaudio_x64.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\hidapi\windows\X64\Debug\hidapi.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\x64\DebugDLL\opus.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\x64\DebugDLL\opus-0.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c xcopy /s/y ..\wfview\rigs\*.* wfview-debug\rigs\*.* $$escape_expand(\\n\\t))
|
||||
LIBS += -L../portaudio/msvc/X64/Debug/ -lportaudio_x64
|
||||
contains(DEFINES,USB_CONTROLLER){
|
||||
|
@ -177,7 +177,7 @@ CONFIG(debug, release|debug) {
|
|||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y .\qcustomplot\win32\qcustomplotd2.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\portaudio\msvc\win32\Debug\portaudio_x86.dll wfview-debug\$$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\hidapi\windows\Debug\hidapi.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\win32\DebugDLL\opus.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\win32\DebugDLL\opus-0.dll wfview-debug $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c xcopy /s/y ..\wfview\rigs\*.* wfview-debug\rigs\*.* $$escape_expand(\\n\\t))
|
||||
contains(DEFINES,USB_CONTROLLER){
|
||||
LIBS += -L../hidapi/windows/debug -lhidapi
|
||||
|
@ -204,7 +204,7 @@ CONFIG(debug, release|debug) {
|
|||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\qcustomplot\x64\qcustomplot2.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\portaudio\msvc\x64\Release\portaudio_x64.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\hidapi\windows\X64\Release\hidapi.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\x64\ReleaseDLL\opus.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\x64\ReleaseDLL\opus-0.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c xcopy /s/y ..\wfview\rigs\*.* wfview-release\rigs\*.* $$escape_expand(\\n\\t))
|
||||
contains(DEFINES,USB_CONTROLLER){
|
||||
LIBS += -L../hidapi/windows/x64/release -lhidapi
|
||||
|
@ -216,7 +216,7 @@ CONFIG(debug, release|debug) {
|
|||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\qcustomplot\win32\qcustomplot2.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\portaudio\msvc\win32\Release\portaudio_x86.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\hidapi\windows\Release\hidapi.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\win32\ReleaseDLL\opus.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c copy /y ..\opus\win32\VS2015\win32\ReleaseDLL\opus-0.dll wfview-release $$escape_expand(\\n\\t))
|
||||
QMAKE_POST_LINK +=$$quote(cmd /c xcopy /s/y ..\wfview\rigs\*.* wfview-release\rigs\*.* $$escape_expand(\\n\\t))
|
||||
contains(DEFINES,USB_CONTROLLER){
|
||||
win32:LIBS += -L../hidapi/windows/release -lhidapi
|
||||
|
@ -287,7 +287,7 @@ SOURCES += main.cpp\
|
|||
rigctld.cpp \
|
||||
usbcontroller.cpp \
|
||||
controllersetup.cpp \
|
||||
transceiveradjustments.cpp \
|
||||
# transceiveradjustments.cpp \
|
||||
selectradio.cpp \
|
||||
tcpserver.cpp \
|
||||
cluster.cpp \
|
||||
|
@ -345,7 +345,7 @@ HEADERS += wfmain.h \
|
|||
ulaw.h \
|
||||
usbcontroller.h \
|
||||
controllersetup.h \
|
||||
transceiveradjustments.h \
|
||||
# transceiveradjustments.h \
|
||||
audiotaper.h \
|
||||
selectradio.h \
|
||||
tcpserver.h \
|
||||
|
@ -368,7 +368,7 @@ FORMS += wfmain.ui \
|
|||
selectradio.ui \
|
||||
repeatersetup.ui \
|
||||
settingswidget.ui \
|
||||
transceiveradjustments.ui \
|
||||
# transceiveradjustments.ui \
|
||||
controllersetup.ui \
|
||||
aboutbox.ui
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue