1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-02 06:04:39 -04:00

Feature plugins framework: presets

This commit is contained in:
f4exb
2020-09-24 05:38:05 +02:00
parent 5f43ace810
commit cd5a4db876
42 changed files with 2242 additions and 26 deletions
+25
View File
@@ -145,6 +145,8 @@ int WebAPIAdapterGUI::instanceConfigGet(
WebAPIAdapterBase::webapiFormatPreferences(preferences, m_mainWindow.getMainSettings().getPreferences());
SWGSDRangel::SWGPreset *workingPreset = response.getWorkingPreset();
webAPIAdapterBase.webapiFormatPreset(workingPreset, m_mainWindow.getMainSettings().getWorkingPresetConst());
SWGSDRangel::SWGFeatureSetPreset *workingFeatureSetPreset = response.getWorkingFeatureSetPreset();
webAPIAdapterBase.webapiFormatFeatureSetPreset(workingFeatureSetPreset, m_mainWindow.getMainSettings().getWorkingFeatureSetPresetConst());
int nbPresets = m_mainWindow.m_settings.getPresetCount();
QList<SWGSDRangel::SWGPreset*> *swgPresets = response.getPresets();
@@ -166,6 +168,16 @@ int WebAPIAdapterGUI::instanceConfigGet(
WebAPIAdapterBase::webapiFormatCommand(swgCommands->back(), *command);
}
int nbFeatureSetPresets = m_mainWindow.m_settings.getFeatureSetPresetCount();
QList<SWGSDRangel::SWGFeatureSetPreset*> *swgFeatureSetPresets = response.getFeaturesetpresets();
for (int i = 0; i < nbFeatureSetPresets; i++)
{
const FeatureSetPreset *preset = m_mainWindow.m_settings.getFeatureSetPreset(i);
swgFeatureSetPresets->append(new SWGSDRangel::SWGFeatureSetPreset);
webAPIAdapterBase.webapiFormatFeatureSetPreset(swgFeatureSetPresets->back(), *preset);
}
return 200;
}
@@ -190,6 +202,9 @@ int WebAPIAdapterGUI::instanceConfigPutPatch(
Preset *workingPreset = m_mainWindow.m_settings.getWorkingPreset();
webAPIAdapterBase.webapiUpdatePreset(force, query.getWorkingPreset(), configKeys.m_workingPresetKeys, workingPreset);
FeatureSetPreset *workingFeatureSetPreset = m_mainWindow.m_settings.getWorkingFeatureSetPreset();
webAPIAdapterBase.webapiUpdateFeatureSetPreset(force, query.getWorkingFeatureSetPreset(), configKeys.m_workingFeatureSetPresetKeys, workingFeatureSetPreset);
QList<PresetKeys>::const_iterator presetKeysIt = configKeys.m_presetKeys.begin();
int i = 0;
for (; presetKeysIt != configKeys.m_presetKeys.end(); ++presetKeysIt, i++)
@@ -210,6 +225,16 @@ int WebAPIAdapterGUI::instanceConfigPutPatch(
m_mainWindow.m_settings.addCommand(newCommand);
}
QList<FeatureSetPresetKeys>::const_iterator featureSetPresetKeysIt = configKeys.m_featureSetPresetKeys.begin();
i = 0;
for (; featureSetPresetKeysIt != configKeys.m_featureSetPresetKeys.end(); ++featureSetPresetKeysIt, i++)
{
FeatureSetPreset *newPreset = new FeatureSetPreset(); // created with default values
SWGSDRangel::SWGFeatureSetPreset *swgPreset = query.getFeaturesetpresets()->at(i);
webAPIAdapterBase.webapiUpdateFeatureSetPreset(force, swgPreset, *featureSetPresetKeysIt, newPreset);
m_mainWindow.m_settings.addFeatureSetPreset(newPreset);
}
MainWindow::MsgApplySettings *msg = MainWindow::MsgApplySettings::create();
m_mainWindow.m_inputMessageQueue.push(msg);