mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-06-13 12:02:32 -04:00
Deep redesign: fixed apply settings on mouse movements for channels that were missing conditional apply settings
This commit is contained in:
parent
5582105c25
commit
ca86cb781b
@ -8,9 +8,9 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules)
|
|||||||
|
|
||||||
project(sdrangelove)
|
project(sdrangelove)
|
||||||
|
|
||||||
set(CMAKE_BUILD_TYPE "Release")
|
#set(CMAKE_BUILD_TYPE "Release")
|
||||||
#set(CMAKE_BUILD_TYPE "ReleaseWithDebugInfo")
|
#set(CMAKE_BUILD_TYPE "ReleaseWithDebugInfo")
|
||||||
#set(CMAKE_BUILD_TYPE "Debug")
|
set(CMAKE_BUILD_TYPE "Debug")
|
||||||
|
|
||||||
set(QT_USE_QTOPENGL TRUE)
|
set(QT_USE_QTOPENGL TRUE)
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
|
@ -243,6 +243,7 @@ void AMDemod::apply()
|
|||||||
m_running.m_inputSampleRate = m_config.m_inputSampleRate;
|
m_running.m_inputSampleRate = m_config.m_inputSampleRate;
|
||||||
m_running.m_inputFrequencyOffset = m_config.m_inputFrequencyOffset;
|
m_running.m_inputFrequencyOffset = m_config.m_inputFrequencyOffset;
|
||||||
m_running.m_rfBandwidth = m_config.m_rfBandwidth;
|
m_running.m_rfBandwidth = m_config.m_rfBandwidth;
|
||||||
|
m_running.m_afBandwidth = m_config.m_afBandwidth;
|
||||||
m_running.m_squelch = m_config.m_squelch;
|
m_running.m_squelch = m_config.m_squelch;
|
||||||
m_running.m_volume = m_config.m_volume;
|
m_running.m_volume = m_config.m_volume;
|
||||||
m_running.m_audioSampleRate = m_config.m_audioSampleRate;
|
m_running.m_audioSampleRate = m_config.m_audioSampleRate;
|
||||||
|
@ -398,6 +398,8 @@ void ChannelAnalyzerGUI::blockApplySettings(bool block)
|
|||||||
|
|
||||||
void ChannelAnalyzerGUI::applySettings()
|
void ChannelAnalyzerGUI::applySettings()
|
||||||
{
|
{
|
||||||
|
if (m_doApplySettings)
|
||||||
|
{
|
||||||
setTitleColor(m_channelMarker->getColor());
|
setTitleColor(m_channelMarker->getColor());
|
||||||
ui->deltaFrequency->setValue(abs(m_channelMarker->getCenterFrequency()));
|
ui->deltaFrequency->setValue(abs(m_channelMarker->getCenterFrequency()));
|
||||||
ui->deltaMinus->setChecked(m_channelMarker->getCenterFrequency() < 0);
|
ui->deltaMinus->setChecked(m_channelMarker->getCenterFrequency() < 0);
|
||||||
@ -411,6 +413,7 @@ void ChannelAnalyzerGUI::applySettings()
|
|||||||
ui->lowCut->value() * 100.0,
|
ui->lowCut->value() * 100.0,
|
||||||
m_spanLog2,
|
m_spanLog2,
|
||||||
ui->ssb->isChecked());
|
ui->ssb->isChecked());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChannelAnalyzerGUI::leaveEvent(QEvent*)
|
void ChannelAnalyzerGUI::leaveEvent(QEvent*)
|
||||||
|
@ -197,6 +197,8 @@ void LoRaDemodGUI::blockApplySettings(bool block)
|
|||||||
|
|
||||||
void LoRaDemodGUI::applySettings()
|
void LoRaDemodGUI::applySettings()
|
||||||
{
|
{
|
||||||
|
if (m_doApplySettings)
|
||||||
|
{
|
||||||
const int loraBW[] = BANDWIDTHSTRING;
|
const int loraBW[] = BANDWIDTHSTRING;
|
||||||
int thisBW = loraBW[ui->BW->value()];
|
int thisBW = loraBW[ui->BW->value()];
|
||||||
|
|
||||||
@ -205,4 +207,5 @@ void LoRaDemodGUI::applySettings()
|
|||||||
m_channelMarker->getCenterFrequency());
|
m_channelMarker->getCenterFrequency());
|
||||||
|
|
||||||
m_LoRaDemod->configure(m_LoRaDemod->getInputMessageQueue(), thisBW);
|
m_LoRaDemod->configure(m_LoRaDemod->getInputMessageQueue(), thisBW);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -345,6 +345,7 @@ void NFMDemod::apply()
|
|||||||
m_running.m_inputSampleRate = m_config.m_inputSampleRate;
|
m_running.m_inputSampleRate = m_config.m_inputSampleRate;
|
||||||
m_running.m_inputFrequencyOffset = m_config.m_inputFrequencyOffset;
|
m_running.m_inputFrequencyOffset = m_config.m_inputFrequencyOffset;
|
||||||
m_running.m_rfBandwidth = m_config.m_rfBandwidth;
|
m_running.m_rfBandwidth = m_config.m_rfBandwidth;
|
||||||
|
m_running.m_afBandwidth = m_config.m_afBandwidth;
|
||||||
m_running.m_squelch = m_config.m_squelch;
|
m_running.m_squelch = m_config.m_squelch;
|
||||||
m_running.m_volume = m_config.m_volume;
|
m_running.m_volume = m_config.m_volume;
|
||||||
m_running.m_audioSampleRate = m_config.m_audioSampleRate;
|
m_running.m_audioSampleRate = m_config.m_audioSampleRate;
|
||||||
|
@ -349,6 +349,8 @@ void SSBDemodGUI::blockApplySettings(bool block)
|
|||||||
|
|
||||||
void SSBDemodGUI::applySettings()
|
void SSBDemodGUI::applySettings()
|
||||||
{
|
{
|
||||||
|
if (m_doApplySettings)
|
||||||
|
{
|
||||||
setTitleColor(m_channelMarker->getColor());
|
setTitleColor(m_channelMarker->getColor());
|
||||||
ui->deltaFrequency->setValue(abs(m_channelMarker->getCenterFrequency()));
|
ui->deltaFrequency->setValue(abs(m_channelMarker->getCenterFrequency()));
|
||||||
ui->deltaMinus->setChecked(m_channelMarker->getCenterFrequency() < 0);
|
ui->deltaMinus->setChecked(m_channelMarker->getCenterFrequency() < 0);
|
||||||
@ -362,6 +364,7 @@ void SSBDemodGUI::applySettings()
|
|||||||
ui->lowCut->value() * 100.0,
|
ui->lowCut->value() * 100.0,
|
||||||
ui->volume->value() / 10.0,
|
ui->volume->value() / 10.0,
|
||||||
m_spanLog2);
|
m_spanLog2);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SSBDemodGUI::leaveEvent(QEvent*)
|
void SSBDemodGUI::leaveEvent(QEvent*)
|
||||||
|
@ -218,6 +218,8 @@ void TCPSrcGUI::blockApplySettings(bool block)
|
|||||||
|
|
||||||
void TCPSrcGUI::applySettings()
|
void TCPSrcGUI::applySettings()
|
||||||
{
|
{
|
||||||
|
if (m_doApplySettings)
|
||||||
|
{
|
||||||
bool ok;
|
bool ok;
|
||||||
|
|
||||||
Real outputSampleRate = ui->sampleRate->text().toDouble(&ok);
|
Real outputSampleRate = ui->sampleRate->text().toDouble(&ok);
|
||||||
@ -289,6 +291,7 @@ void TCPSrcGUI::applySettings()
|
|||||||
boost);
|
boost);
|
||||||
|
|
||||||
ui->applyBtn->setEnabled(false);
|
ui->applyBtn->setEnabled(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TCPSrcGUI::on_sampleFormat_currentIndexChanged(int index)
|
void TCPSrcGUI::on_sampleFormat_currentIndexChanged(int index)
|
||||||
|
@ -199,9 +199,10 @@ bool WFMDemod::handleMessage(const Message& cmd)
|
|||||||
m_config.m_afBandwidth = cfg.getAFBandwidth();
|
m_config.m_afBandwidth = cfg.getAFBandwidth();
|
||||||
m_config.m_volume = cfg.getVolume();
|
m_config.m_volume = cfg.getVolume();
|
||||||
m_config.m_squelch = cfg.getSquelch();
|
m_config.m_squelch = cfg.getSquelch();
|
||||||
|
|
||||||
apply();
|
apply();
|
||||||
|
|
||||||
qDebug() << " - MsgConfigureWFMDemod: m_rfBandwidth: " << m_config.m_rfBandwidth
|
qDebug() << "WFMDemod::handleMessage: MsgConfigureWFMDemod: m_rfBandwidth: " << m_config.m_rfBandwidth
|
||||||
<< " m_afBandwidth: " << m_config.m_afBandwidth
|
<< " m_afBandwidth: " << m_config.m_afBandwidth
|
||||||
<< " m_volume: " << m_config.m_volume
|
<< " m_volume: " << m_config.m_volume
|
||||||
<< " m_squelch: " << m_config.m_squelch;
|
<< " m_squelch: " << m_config.m_squelch;
|
||||||
@ -227,12 +228,14 @@ void WFMDemod::apply()
|
|||||||
if((m_config.m_inputFrequencyOffset != m_running.m_inputFrequencyOffset) ||
|
if((m_config.m_inputFrequencyOffset != m_running.m_inputFrequencyOffset) ||
|
||||||
(m_config.m_inputSampleRate != m_running.m_inputSampleRate))
|
(m_config.m_inputSampleRate != m_running.m_inputSampleRate))
|
||||||
{
|
{
|
||||||
|
qDebug() << "WFMDemod::handleMessage: m_nco.setFreq";
|
||||||
m_nco.setFreq(-m_config.m_inputFrequencyOffset, m_config.m_inputSampleRate);
|
m_nco.setFreq(-m_config.m_inputFrequencyOffset, m_config.m_inputSampleRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
if((m_config.m_inputSampleRate != m_running.m_inputSampleRate) ||
|
if((m_config.m_inputSampleRate != m_running.m_inputSampleRate) ||
|
||||||
(m_config.m_afBandwidth != m_running.m_afBandwidth))
|
(m_config.m_afBandwidth != m_running.m_afBandwidth))
|
||||||
{
|
{
|
||||||
|
qDebug() << "WFMDemod::handleMessage: m_interpolator.create";
|
||||||
m_interpolator.create(16, m_config.m_inputSampleRate, m_config.m_afBandwidth);
|
m_interpolator.create(16, m_config.m_inputSampleRate, m_config.m_afBandwidth);
|
||||||
m_interpolatorDistanceRemain = (Real) m_config.m_inputSampleRate / m_config.m_audioSampleRate;
|
m_interpolatorDistanceRemain = (Real) m_config.m_inputSampleRate / m_config.m_audioSampleRate;
|
||||||
m_interpolatorDistance = (Real) m_config.m_inputSampleRate / (Real) m_config.m_audioSampleRate;
|
m_interpolatorDistance = (Real) m_config.m_inputSampleRate / (Real) m_config.m_audioSampleRate;
|
||||||
@ -242,6 +245,7 @@ void WFMDemod::apply()
|
|||||||
(m_config.m_rfBandwidth != m_running.m_rfBandwidth) ||
|
(m_config.m_rfBandwidth != m_running.m_rfBandwidth) ||
|
||||||
(m_config.m_inputFrequencyOffset != m_running.m_inputFrequencyOffset))
|
(m_config.m_inputFrequencyOffset != m_running.m_inputFrequencyOffset))
|
||||||
{
|
{
|
||||||
|
qDebug() << "WFMDemod::handleMessage: m_rfFilter->create_filter";
|
||||||
Real lowCut = (m_config.m_inputFrequencyOffset - (m_config.m_rfBandwidth / 2.0)) / m_config.m_inputSampleRate;
|
Real lowCut = (m_config.m_inputFrequencyOffset - (m_config.m_rfBandwidth / 2.0)) / m_config.m_inputSampleRate;
|
||||||
Real hiCut = (m_config.m_inputFrequencyOffset + (m_config.m_rfBandwidth / 2.0)) / m_config.m_inputSampleRate;
|
Real hiCut = (m_config.m_inputFrequencyOffset + (m_config.m_rfBandwidth / 2.0)) / m_config.m_inputSampleRate;
|
||||||
m_rfFilter->create_filter(lowCut, hiCut);
|
m_rfFilter->create_filter(lowCut, hiCut);
|
||||||
@ -250,10 +254,12 @@ void WFMDemod::apply()
|
|||||||
if((m_config.m_afBandwidth != m_running.m_afBandwidth) ||
|
if((m_config.m_afBandwidth != m_running.m_afBandwidth) ||
|
||||||
(m_config.m_audioSampleRate != m_running.m_audioSampleRate))
|
(m_config.m_audioSampleRate != m_running.m_audioSampleRate))
|
||||||
{
|
{
|
||||||
|
qDebug() << "WFMDemod::handleMessage: m_lowpass.create";
|
||||||
m_lowpass.create(21, m_config.m_audioSampleRate, m_config.m_afBandwidth);
|
m_lowpass.create(21, m_config.m_audioSampleRate, m_config.m_afBandwidth);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(m_config.m_squelch != m_running.m_squelch) {
|
if(m_config.m_squelch != m_running.m_squelch) {
|
||||||
|
qDebug() << "WFMDemod::handleMessage: set m_squelchLevel";
|
||||||
m_squelchLevel = pow(10.0, m_config.m_squelch / 20.0);
|
m_squelchLevel = pow(10.0, m_config.m_squelch / 20.0);
|
||||||
m_squelchLevel *= m_squelchLevel;
|
m_squelchLevel *= m_squelchLevel;
|
||||||
}
|
}
|
||||||
@ -261,6 +267,7 @@ void WFMDemod::apply()
|
|||||||
m_running.m_inputSampleRate = m_config.m_inputSampleRate;
|
m_running.m_inputSampleRate = m_config.m_inputSampleRate;
|
||||||
m_running.m_inputFrequencyOffset = m_config.m_inputFrequencyOffset;
|
m_running.m_inputFrequencyOffset = m_config.m_inputFrequencyOffset;
|
||||||
m_running.m_rfBandwidth = m_config.m_rfBandwidth;
|
m_running.m_rfBandwidth = m_config.m_rfBandwidth;
|
||||||
|
m_running.m_afBandwidth = m_config.m_afBandwidth;
|
||||||
m_running.m_squelch = m_config.m_squelch;
|
m_running.m_squelch = m_config.m_squelch;
|
||||||
m_running.m_volume = m_config.m_volume;
|
m_running.m_volume = m_config.m_volume;
|
||||||
m_running.m_audioSampleRate = m_config.m_audioSampleRate;
|
m_running.m_audioSampleRate = m_config.m_audioSampleRate;
|
||||||
|
@ -245,6 +245,8 @@ void WFMDemodGUI::blockApplySettings(bool block)
|
|||||||
|
|
||||||
void WFMDemodGUI::applySettings()
|
void WFMDemodGUI::applySettings()
|
||||||
{
|
{
|
||||||
|
if (m_doApplySettings)
|
||||||
|
{
|
||||||
setTitleColor(m_channelMarker->getColor());
|
setTitleColor(m_channelMarker->getColor());
|
||||||
|
|
||||||
m_channelizer->configure(m_channelizer->getInputMessageQueue(),
|
m_channelizer->configure(m_channelizer->getInputMessageQueue(),
|
||||||
@ -259,6 +261,7 @@ void WFMDemodGUI::applySettings()
|
|||||||
ui->afBW->value() * 1000.0,
|
ui->afBW->value() * 1000.0,
|
||||||
ui->volume->value() / 10.0,
|
ui->volume->value() / 10.0,
|
||||||
ui->squelch->value());
|
ui->squelch->value());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void WFMDemodGUI::leaveEvent(QEvent*)
|
void WFMDemodGUI::leaveEvent(QEvent*)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user