diff --git a/sdrgui/gui/basicfeaturesettingsdialog.cpp b/sdrgui/gui/basicfeaturesettingsdialog.cpp index 01c6780bf..f90a4ddcd 100644 --- a/sdrgui/gui/basicfeaturesettingsdialog.cpp +++ b/sdrgui/gui/basicfeaturesettingsdialog.cpp @@ -61,8 +61,89 @@ void BasicFeatureSettingsDialog::on_title_editingFinished() m_title = ui->title->text(); } +void BasicFeatureSettingsDialog::on_reverseAPI_toggled(bool checked) +{ + m_useReverseAPI = checked; +} + +void BasicFeatureSettingsDialog::on_reverseAPIAddress_editingFinished() +{ + m_reverseAPIAddress = ui->reverseAPIAddress->text(); +} + +void BasicFeatureSettingsDialog::on_reverseAPIPort_editingFinished() +{ + bool dataOk; + int reverseAPIPort = ui->reverseAPIPort->text().toInt(&dataOk); + + if((!dataOk) || (reverseAPIPort < 1024) || (reverseAPIPort > 65535)) { + return; + } else { + m_reverseAPIPort = reverseAPIPort; + } +} + +void BasicFeatureSettingsDialog::on_reverseAPIFeatureSetIndex_editingFinished() +{ + bool dataOk; + int reverseAPIFeatureSetIndex = ui->reverseAPIFeatureSetIndex->text().toInt(&dataOk); + + if ((!dataOk) || (reverseAPIFeatureSetIndex < 0)) { + return; + } else { + m_reverseAPIFeatureSetIndex = reverseAPIFeatureSetIndex; + } +} + +void BasicFeatureSettingsDialog::on_reverseAPIFeatureIndex_editingFinished() +{ + bool dataOk; + int reverseAPIFeatureIndex = ui->reverseAPIFeatureIndex->text().toInt(&dataOk); + + if ((!dataOk) || (reverseAPIFeatureIndex < 0)) { + return; + } else { + m_reverseAPIFeatureIndex = reverseAPIFeatureIndex; + } +} + void BasicFeatureSettingsDialog::accept() { m_hasChanged = true; QDialog::accept(); } + +void BasicFeatureSettingsDialog::setUseReverseAPI(bool useReverseAPI) +{ + m_useReverseAPI = useReverseAPI; + ui->reverseAPI->setChecked(m_useReverseAPI); +} + +void BasicFeatureSettingsDialog::setReverseAPIAddress(const QString& address) +{ + m_reverseAPIAddress = address; + ui->reverseAPIAddress->setText(m_reverseAPIAddress); +} + +void BasicFeatureSettingsDialog::setReverseAPIPort(uint16_t port) +{ + if (port < 1024) { + return; + } else { + m_reverseAPIPort = port; + } + + ui->reverseAPIPort->setText(tr("%1").arg(m_reverseAPIPort)); +} + +void BasicFeatureSettingsDialog::setReverseAPIFeatureSetIndex(uint16_t featureSetIndex) +{ + m_reverseAPIFeatureSetIndex = featureSetIndex > 99 ? 99 : featureSetIndex; + ui->reverseAPIFeatureSetIndex->setText(tr("%1").arg(m_reverseAPIFeatureSetIndex)); +} + +void BasicFeatureSettingsDialog::setReverseAPIFeatureIndex(uint16_t featureIndex) +{ + m_reverseAPIFeatureIndex = featureIndex > 99 ? 99 : featureIndex; + ui->reverseAPIFeatureIndex->setText(tr("%1").arg(m_reverseAPIFeatureIndex)); +} diff --git a/sdrgui/gui/basicfeaturesettingsdialog.h b/sdrgui/gui/basicfeaturesettingsdialog.h index 81563dcce..629cdf6f5 100644 --- a/sdrgui/gui/basicfeaturesettingsdialog.h +++ b/sdrgui/gui/basicfeaturesettingsdialog.h @@ -40,18 +40,23 @@ public: bool useReverseAPI() const { return m_useReverseAPI; } const QString& getReverseAPIAddress() const { return m_reverseAPIAddress; } uint16_t getReverseAPIPort() const { return m_reverseAPIPort; } - uint16_t getReverseAPIDeviceIndex() const { return m_reverseAPIDeviceIndex; } - uint16_t getReverseAPIChannelIndex() const { return m_reverseAPIChannelIndex; } + uint16_t getReverseAPIFeatureSetIndex() const { return m_reverseAPIFeatureSetIndex; } + uint16_t getReverseAPIFeatureIndex() const { return m_reverseAPIFeatureIndex; } void setUseReverseAPI(bool useReverseAPI); void setReverseAPIAddress(const QString& address); void setReverseAPIPort(uint16_t port); - void setReverseAPIDeviceIndex(uint16_t deviceIndex); - void setReverseAPIChannelIndex(uint16_t channelIndex); + void setReverseAPIFeatureSetIndex(uint16_t featureSetIndex); + void setReverseAPIFeatureIndex(uint16_t featureIndex); bool hasChanged() const { return m_hasChanged; } private slots: void on_colorBtn_clicked(); void on_title_editingFinished(); + void on_reverseAPI_toggled(bool checked); + void on_reverseAPIAddress_editingFinished(); + void on_reverseAPIPort_editingFinished(); + void on_reverseAPIFeatureSetIndex_editingFinished(); + void on_reverseAPIFeatureIndex_editingFinished(); void accept(); private: @@ -61,8 +66,8 @@ private: bool m_useReverseAPI; QString m_reverseAPIAddress; uint16_t m_reverseAPIPort; - uint16_t m_reverseAPIDeviceIndex; - uint16_t m_reverseAPIChannelIndex; + uint16_t m_reverseAPIFeatureSetIndex; + uint16_t m_reverseAPIFeatureIndex; bool m_hasChanged; void paintColor(); diff --git a/sdrgui/gui/basicfeaturesettingsdialog.ui b/sdrgui/gui/basicfeaturesettingsdialog.ui index ae8788606..9c9aa2442 100644 --- a/sdrgui/gui/basicfeaturesettingsdialog.ui +++ b/sdrgui/gui/basicfeaturesettingsdialog.ui @@ -6,7 +6,7 @@ 0 0 - 400 + 456 158 @@ -133,16 +133,10 @@ - 45 + 50 0 - - - 45 - 16777215 - - Reverse API port @@ -155,28 +149,22 @@ - + - D + Set - + 22 0 - - - 22 - 16777215 - - - Reverse API destination device index + Reverse API destination feature set index 00 @@ -190,28 +178,22 @@ - + - C + Feat - + 22 0 - - - 22 - 16777215 - - - Reverse API destination channel index + Reverse API destination feature index 00 diff --git a/sdrgui/mainwindow.cpp b/sdrgui/mainwindow.cpp index 541d55cd1..ca9c7aa42 100644 --- a/sdrgui/mainwindow.cpp +++ b/sdrgui/mainwindow.cpp @@ -226,6 +226,7 @@ MainWindow::MainWindow(qtwebapp::LoggerWithFile *logger, const MainParser& parse qDebug() << "MainWindow::MainWindow: load current preset settings..."; loadPresetSettings(m_settings.getWorkingPreset(), 0); + m_apiAdapter = new WebAPIAdapterGUI(*this); loadFeatureSetPresetSettings(m_settings.getWorkingFeatureSetPreset(), 0); splash->showStatusMessage("update preset controls...", Qt::white); @@ -250,7 +251,6 @@ MainWindow::MainWindow(qtwebapp::LoggerWithFile *logger, const MainParser& parse } #endif - m_apiAdapter = new WebAPIAdapterGUI(*this); ui->featureDock->setWebAPIAdapter(m_apiAdapter); m_requestMapper = new WebAPIRequestMapper(this); m_requestMapper->setAdapter(m_apiAdapter); @@ -759,6 +759,7 @@ void MainWindow::loadFeatureSetPresetSettings(const FeatureSetPreset* preset, in if (featureSetIndex >= 0) { FeatureUISet *featureSetUI = m_featureUIs[featureSetIndex]; + qDebug("MainWindow::loadFeatureSetPresetSettings: m_apiAdapter: %p", m_apiAdapter); featureSetUI->loadFeatureSetSettings(preset, m_pluginManager->getPluginAPI(), m_apiAdapter); } } @@ -1965,6 +1966,7 @@ void MainWindow::featureAddClicked(int featureIndex) if (currentFeatureTabIndex >= 0) { FeatureUISet *featureUISet = m_featureUIs[currentFeatureTabIndex]; + qDebug("MainWindow::featureAddClicked: m_apiAdapter: %p", m_apiAdapter); m_pluginManager->createFeatureInstance(featureIndex, featureUISet, m_apiAdapter); } }