From 467e87730b5e64700d37576385637967a404c25c Mon Sep 17 00:00:00 2001 From: f4exb Date: Wed, 1 Nov 2017 22:40:41 +0100 Subject: [PATCH] Unimplement main window reload devices --- sdrgui/mainwindow.cpp | 111 ++++++++++++++++++++++-------------------- 1 file changed, 57 insertions(+), 54 deletions(-) diff --git a/sdrgui/mainwindow.cpp b/sdrgui/mainwindow.cpp index f4ef07956..97d5938d0 100644 --- a/sdrgui/mainwindow.cpp +++ b/sdrgui/mainwindow.cpp @@ -1070,61 +1070,64 @@ void MainWindow::on_action_removeLastDevice_triggered() void MainWindow::on_action_reloadDevices_triggered() { - // all devices must be stopped - std::vector::iterator it = m_deviceUIs.begin(); - for (; it != m_deviceUIs.end(); ++it) - { - if ((*it)->m_deviceSourceEngine) // it is a source device - { - if ((*it)->m_deviceSourceEngine->state() == DSPDeviceSourceEngine::StRunning) - { - QMessageBox::information(this, tr("Message"), tr("Stop all devices for reload to take effect")); - return; - } - } + QMessageBox::information(this, tr("Message"), tr("Not implemented")); + return; - if ((*it)->m_deviceSinkEngine) // it is a sink device - { - if ((*it)->m_deviceSinkEngine->state() == DSPDeviceSinkEngine::StRunning) - { - QMessageBox::information(this, tr("Message"), tr("Stop all devices for reload to take effect")); - return; - } - } - } - - // re-scan devices - m_pluginManager->updateSampleSourceDevices(); - m_pluginManager->updateSampleSinkDevices(); - - // re-populate device selectors keeping the same selection - it = m_deviceUIs.begin(); - for (; it != m_deviceUIs.end(); ++it) - { - if ((*it)->m_deviceSourceEngine) // it is a source device - { - QComboBox *deviceSelectorComboBox = (*it)->m_samplingDeviceControl->getDeviceSelector(); - bool sampleSourceSignalsBlocked = deviceSelectorComboBox->blockSignals(true); - uint dspDeviceSourceEngineUID = (*it)->m_deviceSourceEngine->getUID(); - m_pluginManager->duplicateLocalSampleSourceDevices(dspDeviceSourceEngineUID); - m_pluginManager->fillSampleSourceSelector(deviceSelectorComboBox, dspDeviceSourceEngineUID); - int newIndex = m_pluginManager->getSampleSourceSelectorIndex(deviceSelectorComboBox, (*it)->m_deviceSourceAPI); - deviceSelectorComboBox->setCurrentIndex(newIndex); - deviceSelectorComboBox->blockSignals(sampleSourceSignalsBlocked); - } - - if ((*it)->m_deviceSinkEngine) // it is a sink device - { - QComboBox *deviceSelectorComboBox = (*it)->m_samplingDeviceControl->getDeviceSelector(); - bool sampleSinkSignalsBlocked = deviceSelectorComboBox->blockSignals(true); - uint dspDeviceSinkEngineUID = (*it)->m_deviceSinkEngine->getUID(); - m_pluginManager->duplicateLocalSampleSinkDevices(dspDeviceSinkEngineUID); - m_pluginManager->fillSampleSinkSelector(deviceSelectorComboBox, dspDeviceSinkEngineUID); - int newIndex = m_pluginManager->getSampleSinkSelectorIndex(deviceSelectorComboBox, (*it)->m_deviceSinkAPI); - deviceSelectorComboBox->setCurrentIndex(newIndex); - deviceSelectorComboBox->blockSignals(sampleSinkSignalsBlocked); - } - } +// // all devices must be stopped +// std::vector::iterator it = m_deviceUIs.begin(); +// for (; it != m_deviceUIs.end(); ++it) +// { +// if ((*it)->m_deviceSourceEngine) // it is a source device +// { +// if ((*it)->m_deviceSourceEngine->state() == DSPDeviceSourceEngine::StRunning) +// { +// QMessageBox::information(this, tr("Message"), tr("Stop all devices for reload to take effect")); +// return; +// } +// } +// +// if ((*it)->m_deviceSinkEngine) // it is a sink device +// { +// if ((*it)->m_deviceSinkEngine->state() == DSPDeviceSinkEngine::StRunning) +// { +// QMessageBox::information(this, tr("Message"), tr("Stop all devices for reload to take effect")); +// return; +// } +// } +// } +// +// // re-scan devices +// m_pluginManager->updateSampleSourceDevices(); +// m_pluginManager->updateSampleSinkDevices(); +// +// // re-populate device selectors keeping the same selection +// it = m_deviceUIs.begin(); +// for (; it != m_deviceUIs.end(); ++it) +// { +// if ((*it)->m_deviceSourceEngine) // it is a source device +// { +// QComboBox *deviceSelectorComboBox = (*it)->m_samplingDeviceControl->getDeviceSelector(); +// bool sampleSourceSignalsBlocked = deviceSelectorComboBox->blockSignals(true); +// uint dspDeviceSourceEngineUID = (*it)->m_deviceSourceEngine->getUID(); +// m_pluginManager->duplicateLocalSampleSourceDevices(dspDeviceSourceEngineUID); +// m_pluginManager->fillSampleSourceSelector(deviceSelectorComboBox, dspDeviceSourceEngineUID); +// int newIndex = m_pluginManager->getSampleSourceSelectorIndex(deviceSelectorComboBox, (*it)->m_deviceSourceAPI); +// deviceSelectorComboBox->setCurrentIndex(newIndex); +// deviceSelectorComboBox->blockSignals(sampleSourceSignalsBlocked); +// } +// +// if ((*it)->m_deviceSinkEngine) // it is a sink device +// { +// QComboBox *deviceSelectorComboBox = (*it)->m_samplingDeviceControl->getDeviceSelector(); +// bool sampleSinkSignalsBlocked = deviceSelectorComboBox->blockSignals(true); +// uint dspDeviceSinkEngineUID = (*it)->m_deviceSinkEngine->getUID(); +// m_pluginManager->duplicateLocalSampleSinkDevices(dspDeviceSinkEngineUID); +// m_pluginManager->fillSampleSinkSelector(deviceSelectorComboBox, dspDeviceSinkEngineUID); +// int newIndex = m_pluginManager->getSampleSinkSelectorIndex(deviceSelectorComboBox, (*it)->m_deviceSinkAPI); +// deviceSelectorComboBox->setCurrentIndex(newIndex); +// deviceSelectorComboBox->blockSignals(sampleSinkSignalsBlocked); +// } +// } } void MainWindow::on_action_Exit_triggered()