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

Make rollup state a serializable object so that it can be dumped in JSON format for the API. Prerequisite tp #1050

This commit is contained in:
f4exb
2022-01-09 05:27:12 +01:00
parent e2fc5aa87c
commit 98b305f320
599 changed files with 6183 additions and 640 deletions
@@ -34,6 +34,7 @@
#include "channel/channelapi.h"
#include "device/deviceapi.h"
#include "commands/commandkeyreceiver.h"
#include "settings/serializable.h"
#include "maincore.h"
#include "jogdialcontroller.h"
@@ -364,6 +365,20 @@ void JogdialController::webapiFormatFeatureSettings(
response.getJogdialControllerSettings()->setReverseApiPort(settings.m_reverseAPIPort);
response.getJogdialControllerSettings()->setReverseApiFeatureSetIndex(settings.m_reverseAPIFeatureSetIndex);
response.getJogdialControllerSettings()->setReverseApiFeatureIndex(settings.m_reverseAPIFeatureIndex);
if (settings.m_rollupState)
{
if (response.getJogdialControllerSettings()->getRollupState())
{
settings.m_rollupState->formatTo(response.getJogdialControllerSettings()->getRollupState());
}
else
{
SWGSDRangel::SWGRollupState *swgRollupState = new SWGSDRangel::SWGRollupState();
settings.m_rollupState->formatTo(swgRollupState);
response.getJogdialControllerSettings()->setRollupState(swgRollupState);
}
}
}
void JogdialController::webapiUpdateFeatureSettings(
@@ -392,6 +407,9 @@ void JogdialController::webapiUpdateFeatureSettings(
if (featureSettingsKeys.contains("reverseAPIFeatureIndex")) {
settings.m_reverseAPIFeatureIndex = response.getJogdialControllerSettings()->getReverseApiFeatureIndex();
}
if (settings.m_rollupState && featureSettingsKeys.contains("rollupState")) {
settings.m_rollupState->updateFrom(featureSettingsKeys, response.getJogdialControllerSettings()->getRollupState());
}
}
void JogdialController::webapiReverseSendSettings(QList<QString>& featureSettingsKeys, const JogdialControllerSettings& settings, bool force)