diff --git a/plugins/feature/afc/afc.cpp b/plugins/feature/afc/afc.cpp index 57bc499cf..3cc0ea8b7 100644 --- a/plugins/feature/afc/afc.cpp +++ b/plugins/feature/afc/afc.cpp @@ -242,8 +242,6 @@ void AFC::applySettings(const AFCSettings& settings, const QList& setti { qDebug() << "AFC::applySettings:" << settings.getDebugString(settingsKeys, force) << " force: " << force; - QList reverseAPIKeys; - if (settingsKeys.contains("trackerDeviceSetIndex") || force) { removeTrackerFeatureReference(); @@ -272,14 +270,14 @@ void AFC::applySettings(const AFCSettings& settings, const QList& setti settingsKeys.contains("reverseAPIPort") || settingsKeys.contains("reverseAPIFeatureSetIndex") || settingsKeys.contains("m_reverseAPIFeatureIndex"); - webapiReverseSendSettings(reverseAPIKeys, settings, fullUpdate || force); + webapiReverseSendSettings(settingsKeys, settings, fullUpdate || force); } if (force) { m_settings = settings; } else { m_settings.applySettings(settingsKeys, settings); - } + } } void AFC::updateDeviceSetLists() diff --git a/plugins/feature/afc/afcgui.cpp b/plugins/feature/afc/afcgui.cpp index ec8866602..55b601cbd 100644 --- a/plugins/feature/afc/afcgui.cpp +++ b/plugins/feature/afc/afcgui.cpp @@ -435,6 +435,8 @@ void AFCGUI::applySettings(bool force) AFC::MsgConfigureAFC* message = AFC::MsgConfigureAFC::create( m_settings, m_settingsKeys, force); m_afc->getInputMessageQueue()->push(message); } + + m_settingsKeys.clear(); } void AFCGUI::makeUIConnections() diff --git a/plugins/feature/ais/ais.cpp b/plugins/feature/ais/ais.cpp index ebcc84fff..d114c7b0c 100644 --- a/plugins/feature/ais/ais.cpp +++ b/plugins/feature/ais/ais.cpp @@ -98,7 +98,7 @@ bool AIS::handleMessage(const Message& cmd) { MsgConfigureAIS& cfg = (MsgConfigureAIS&) cmd; qDebug() << "AIS::handleMessage: MsgConfigureAIS"; - applySettings(cfg.getSettings(), cfg.getForce()); + applySettings(cfg.getSettings(), cfg.getSettingsKeys(), cfg.getForce()); return true; } @@ -127,51 +127,38 @@ bool AIS::deserialize(const QByteArray& data) { if (m_settings.deserialize(data)) { - MsgConfigureAIS *msg = MsgConfigureAIS::create(m_settings, true); + MsgConfigureAIS *msg = MsgConfigureAIS::create(m_settings, QList(), true); m_inputMessageQueue.push(msg); return true; } else { m_settings.resetToDefaults(); - MsgConfigureAIS *msg = MsgConfigureAIS::create(m_settings, true); + MsgConfigureAIS *msg = MsgConfigureAIS::create(m_settings, QList(), true); m_inputMessageQueue.push(msg); return false; } } -void AIS::applySettings(const AISSettings& settings, bool force) +void AIS::applySettings(const AISSettings& settings, const QList& settingsKeys, bool force) { - qDebug() << "AIS::applySettings:" - << " m_title: " << settings.m_title - << " m_rgbColor: " << settings.m_rgbColor - << " m_useReverseAPI: " << settings.m_useReverseAPI - << " m_reverseAPIAddress: " << settings.m_reverseAPIAddress - << " m_reverseAPIPort: " << settings.m_reverseAPIPort - << " m_reverseAPIFeatureSetIndex: " << settings.m_reverseAPIFeatureSetIndex - << " m_reverseAPIFeatureIndex: " << settings.m_reverseAPIFeatureIndex - << " force: " << force; - - QList reverseAPIKeys; - - if ((m_settings.m_title != settings.m_title) || force) { - reverseAPIKeys.append("title"); - } - if ((m_settings.m_rgbColor != settings.m_rgbColor) || force) { - reverseAPIKeys.append("rgbColor"); - } + qDebug() << "AIS::applySettings:" << settings.getDebugString(settingsKeys, force) << force; if (settings.m_useReverseAPI) { - bool fullUpdate = ((m_settings.m_useReverseAPI != settings.m_useReverseAPI) && settings.m_useReverseAPI) || - (m_settings.m_reverseAPIAddress != settings.m_reverseAPIAddress) || - (m_settings.m_reverseAPIPort != settings.m_reverseAPIPort) || - (m_settings.m_reverseAPIFeatureSetIndex != settings.m_reverseAPIFeatureSetIndex) || - (m_settings.m_reverseAPIFeatureIndex != settings.m_reverseAPIFeatureIndex); - webapiReverseSendSettings(reverseAPIKeys, settings, fullUpdate || force); + bool fullUpdate = (settingsKeys.contains("useReverseAPI") && settings.m_useReverseAPI) || + settingsKeys.contains("reverseAPIAddress") || + settingsKeys.contains("reverseAPIPort") || + settingsKeys.contains("reverseAPIFeatureSetIndex") || + settingsKeys.contains("m_reverseAPIFeatureIndex"); + webapiReverseSendSettings(settingsKeys, settings, fullUpdate || force); } - m_settings = settings; + if (force) { + m_settings = settings; + } else { + m_settings.applySettings(settingsKeys, settings); + } } int AIS::webapiSettingsGet( @@ -195,12 +182,12 @@ int AIS::webapiSettingsPutPatch( AISSettings settings = m_settings; webapiUpdateFeatureSettings(settings, featureSettingsKeys, response); - MsgConfigureAIS *msg = MsgConfigureAIS::create(settings, force); + MsgConfigureAIS *msg = MsgConfigureAIS::create(settings, featureSettingsKeys, force); m_inputMessageQueue.push(msg); if (m_guiMessageQueue) // forward to GUI if any { - MsgConfigureAIS *msgToGUI = MsgConfigureAIS::create(settings, force); + MsgConfigureAIS *msgToGUI = MsgConfigureAIS::create(settings, featureSettingsKeys, force); m_guiMessageQueue->push(msgToGUI); } @@ -245,6 +232,26 @@ void AIS::webapiFormatFeatureSettings( response.getAisSettings()->setRollupState(swgRollupState); } } + + if (!response.getAisSettings()->getVesselColumnIndexes()) { + response.getAisSettings()->setVesselColumnIndexes(new QList()); + } + + response.getAisSettings()->getVesselColumnIndexes()->clear(); + + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + response.getAisSettings()->getVesselColumnIndexes()->push_back(settings.m_vesselColumnIndexes[i]); + } + + if (!response.getAisSettings()->getVesselColumnSizes()) { + response.getAisSettings()->setVesselColumnSizes(new QList()); + } + + response.getAisSettings()->getVesselColumnSizes()->clear(); + + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + response.getAisSettings()->getVesselColumnSizes()->push_back(settings.m_vesselColumnSizes[i]); + } } void AIS::webapiUpdateFeatureSettings( @@ -276,9 +283,27 @@ void AIS::webapiUpdateFeatureSettings( if (settings.m_rollupState && featureSettingsKeys.contains("rollupState")) { settings.m_rollupState->updateFrom(featureSettingsKeys, response.getAisSettings()->getRollupState()); } + + if (featureSettingsKeys.contains("vesselColumnIndexes")) + { + const QList *indexes = response.getAisSettings()->getVesselColumnIndexes(); + + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + settings.m_vesselColumnIndexes[i] = (*indexes)[i]; + } + } + + if (featureSettingsKeys.contains("vesselColumnSizes")) + { + const QList *indexes = response.getAisSettings()->getVesselColumnSizes(); + + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + settings.m_vesselColumnSizes[i] = (*indexes)[i]; + } + } } -void AIS::webapiReverseSendSettings(QList& featureSettingsKeys, const AISSettings& settings, bool force) +void AIS::webapiReverseSendSettings(const QList& featureSettingsKeys, const AISSettings& settings, bool force) { SWGSDRangel::SWGFeatureSettings *swgFeatureSettings = new SWGSDRangel::SWGFeatureSettings(); // swgFeatureSettings->setOriginatorFeatureIndex(getIndexInDeviceSet()); diff --git a/plugins/feature/ais/ais.h b/plugins/feature/ais/ais.h index 5574f6445..f22fa7383 100644 --- a/plugins/feature/ais/ais.h +++ b/plugins/feature/ais/ais.h @@ -44,19 +44,22 @@ public: public: const AISSettings& getSettings() const { return m_settings; } + const QList& getSettingsKeys() const { return m_settingsKeys; } bool getForce() const { return m_force; } - static MsgConfigureAIS* create(const AISSettings& settings, bool force) { - return new MsgConfigureAIS(settings, force); + static MsgConfigureAIS* create(const AISSettings& settings, const QList& settingsKeys, bool force) { + return new MsgConfigureAIS(settings, settingsKeys, force); } private: AISSettings m_settings; + QList m_settingsKeys; bool m_force; - MsgConfigureAIS(const AISSettings& settings, bool force) : + MsgConfigureAIS(const AISSettings& settings, const QList& settingsKeys, bool force) : Message(), m_settings(settings), + m_settingsKeys(settingsKeys), m_force(force) { } }; @@ -104,8 +107,8 @@ private: void start(); void stop(); - void applySettings(const AISSettings& settings, bool force = false); - void webapiReverseSendSettings(QList& featureSettingsKeys, const AISSettings& settings, bool force); + void applySettings(const AISSettings& settings, const QList& settingsKeys, bool force = false); + void webapiReverseSendSettings(const QList& featureSettingsKeys, const AISSettings& settings, bool force); void scanAvailableChannels(); private slots: diff --git a/plugins/feature/ais/aisgui.cpp b/plugins/feature/ais/aisgui.cpp index 188b10a89..bebabf90f 100644 --- a/plugins/feature/ais/aisgui.cpp +++ b/plugins/feature/ais/aisgui.cpp @@ -130,7 +130,13 @@ bool AISGUI::handleMessage(const Message& message) { qDebug("AISGUI::handleMessage: AIS::MsgConfigureAIS"); const AIS::MsgConfigureAIS& cfg = (AIS::MsgConfigureAIS&) message; - m_settings = cfg.getSettings(); + + if (cfg.getForce()) { + m_settings = cfg.getSettings(); + } else { + m_settings.applySettings(cfg.getSettingsKeys(), cfg.getSettings()); + } + blockApplySettings(true); displaySettings(); blockApplySettings(false); @@ -258,9 +264,11 @@ void AISGUI::displaySettings() bool hidden = m_settings.m_vesselColumnSizes[i] == 0; header->setSectionHidden(i, hidden); vesselsMenu->actions().at(i)->setChecked(!hidden); + if (m_settings.m_vesselColumnSizes[i] > 0) { ui->vessels->setColumnWidth(i, m_settings.m_vesselColumnSizes[i]); } + header->moveSection(header->visualIndex(i), m_settings.m_vesselColumnIndexes[i]); } @@ -295,6 +303,12 @@ void AISGUI::onMenuDialogCalled(const QPoint &p) setTitle(m_settings.m_title); setTitleColor(m_settings.m_rgbColor); + m_settingsKeys.append("useReverseAPI"); + m_settingsKeys.append("reverseAPIAddress"); + m_settingsKeys.append("reverseAPIPort"); + m_settingsKeys.append("reverseAPIFeatureSetIndex"); + m_settingsKeys.append("reverseAPIFeatureIndex"); + applySettings(); } @@ -333,9 +347,11 @@ void AISGUI::applySettings(bool force) { if (m_doApplySettings) { - AIS::MsgConfigureAIS* message = AIS::MsgConfigureAIS::create(m_settings, force); + AIS::MsgConfigureAIS* message = AIS::MsgConfigureAIS::create(m_settings, m_settingsKeys, force); m_ais->getInputMessageQueue()->push(message); } + + m_settingsKeys.clear(); } void AISGUI::resizeTable() @@ -370,6 +386,8 @@ void AISGUI::vessels_sectionMoved(int logicalIndex, int oldVisualIndex, int newV (void) oldVisualIndex; m_settings.m_vesselColumnIndexes[logicalIndex] = newVisualIndex; + m_settingsKeys.append("vesselColumnIndexes"); + applySettings(); } // Column in table resized (when hidden size is 0) @@ -378,6 +396,8 @@ void AISGUI::vessels_sectionResized(int logicalIndex, int oldSize, int newSize) (void) oldSize; m_settings.m_vesselColumnSizes[logicalIndex] = newSize; + m_settingsKeys.append("vesselColumnSizes"); + applySettings(); } // Right click in table header - show column select menu diff --git a/plugins/feature/ais/aisgui.h b/plugins/feature/ais/aisgui.h index 4e30f7d15..893a59d7a 100644 --- a/plugins/feature/ais/aisgui.h +++ b/plugins/feature/ais/aisgui.h @@ -67,6 +67,7 @@ private: PluginAPI* m_pluginAPI; FeatureUISet* m_featureUISet; AISSettings m_settings; + QList m_settingsKeys; RollupState m_rollupState; bool m_doApplySettings; diff --git a/plugins/feature/ais/aissettings.cpp b/plugins/feature/ais/aissettings.cpp index 552543bcb..f2889dc77 100644 --- a/plugins/feature/ais/aissettings.cpp +++ b/plugins/feature/ais/aissettings.cpp @@ -145,3 +145,96 @@ bool AISSettings::deserialize(const QByteArray& data) return false; } } + +void AISSettings::applySettings(const QStringList& settingsKeys, const AISSettings& settings) +{ + if (settingsKeys.contains("title")) { + m_title = settings.m_title; + } + if (settingsKeys.contains("rgbColor")) { + m_rgbColor = settings.m_rgbColor; + } + if (settingsKeys.contains("useReverseAPI")) { + m_useReverseAPI = settings.m_useReverseAPI; + } + if (settingsKeys.contains("reverseAPIAddress")) { + m_reverseAPIAddress = settings.m_reverseAPIAddress; + } + if (settingsKeys.contains("reverseAPIPort")) { + m_reverseAPIPort = settings.m_reverseAPIPort; + } + if (settingsKeys.contains("reverseAPIFeatureSetIndex")) { + m_reverseAPIFeatureSetIndex = settings.m_reverseAPIFeatureSetIndex; + } + if (settingsKeys.contains("reverseAPIFeatureIndex")) { + m_reverseAPIFeatureIndex = settings.m_reverseAPIFeatureIndex; + } + if (settingsKeys.contains("workspaceIndex")) { + m_workspaceIndex = settings.m_workspaceIndex; + } + + if (settingsKeys.contains("vesselColumnIndexes")) + { + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + m_vesselColumnIndexes[i] = settings.m_vesselColumnIndexes[i]; + } + } + + if (settingsKeys.contains("vesselColumnSizes")) + { + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + m_vesselColumnSizes[i] = settings.m_vesselColumnSizes[i]; + } + } +} + +QString AISSettings::getDebugString(const QStringList& settingsKeys, bool force) const +{ + std::ostringstream ostr; + + if (settingsKeys.contains("title") || force) { + ostr << " m_title: " << m_title.toStdString(); + } + if (settingsKeys.contains("rgbColor") || force) { + ostr << " m_rgbColor: " << m_rgbColor; + } + if (settingsKeys.contains("useReverseAPI") || force) { + ostr << " m_useReverseAPI: " << m_useReverseAPI; + } + if (settingsKeys.contains("reverseAPIAddress") || force) { + ostr << " m_reverseAPIAddress: " << m_reverseAPIAddress.toStdString(); + } + if (settingsKeys.contains("reverseAPIPort") || force) { + ostr << " m_reverseAPIPort: " << m_reverseAPIPort; + } + if (settingsKeys.contains("reverseAPIFeatureSetIndex") || force) { + ostr << " m_reverseAPIFeatureSetIndex: " << m_reverseAPIFeatureSetIndex; + } + if (settingsKeys.contains("reverseAPIFeatureIndex") || force) { + ostr << " m_reverseAPIFeatureIndex: " << m_reverseAPIFeatureIndex; + } + if (settingsKeys.contains("workspaceIndex") || force) { + ostr << " m_workspaceIndex: " << m_workspaceIndex; + } + + if (settingsKeys.contains("vesselColumnIndexes")) + { + ostr << "m_vesselColumnIndexes:"; + + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + ostr << " " << m_vesselColumnIndexes[i]; + } + } + + + if (settingsKeys.contains("vesselColumnSizes")) + { + ostr << "m_vesselColumnSizes:"; + + for (int i = 0; i < AIS_VESSEL_COLUMNS; i++) { + ostr << " " << m_vesselColumnSizes[i]; + } + } + + return QString(ostr.str().c_str()); +} diff --git a/plugins/feature/ais/aissettings.h b/plugins/feature/ais/aissettings.h index 2cf555800..f1ff92e74 100644 --- a/plugins/feature/ais/aissettings.h +++ b/plugins/feature/ais/aissettings.h @@ -50,6 +50,8 @@ struct AISSettings QByteArray serialize() const; bool deserialize(const QByteArray& data); void setRollupState(Serializable *rollupState) { m_rollupState = rollupState; } + void applySettings(const QStringList& settingsKeys, const AISSettings& settings); + QString getDebugString(const QStringList& settingsKeys, bool force=false) const; static const QStringList m_pipeTypes; static const QStringList m_pipeURIs; diff --git a/sdrbase/resources/webapi/doc/html2/index.html b/sdrbase/resources/webapi/doc/html2/index.html index 3fae3bb11..b912a018c 100644 --- a/sdrbase/resources/webapi/doc/html2/index.html +++ b/sdrbase/resources/webapi/doc/html2/index.html @@ -1245,6 +1245,18 @@ margin-bottom: 20px; }, "rollupState" : { "$ref" : "#/definitions/RollupState" + }, + "vesselColumnIndexes" : { + "type" : "array", + "items" : { + "type" : "integer" + } + }, + "vesselColumnSizes" : { + "type" : "array", + "items" : { + "type" : "integer" + } } }, "description" : "AIS settings" @@ -56629,7 +56641,7 @@ except ApiException as e:
- Generated 2022-11-13T19:59:19.161+01:00 + Generated 2022-11-20T11:19:42.122+01:00
diff --git a/sdrbase/resources/webapi/doc/swagger/include/AIS.yaml b/sdrbase/resources/webapi/doc/swagger/include/AIS.yaml index 6f0e26c95..a62f10bc9 100644 --- a/sdrbase/resources/webapi/doc/swagger/include/AIS.yaml +++ b/sdrbase/resources/webapi/doc/swagger/include/AIS.yaml @@ -18,3 +18,11 @@ AISSettings: type: integer rollupState: $ref: "/doc/swagger/include/RollupState.yaml#/RollupState" + vesselColumnIndexes: + type: array + items: + type: integer + vesselColumnSizes: + type: array + items: + type: integer diff --git a/swagger/sdrangel/api/swagger/include/AIS.yaml b/swagger/sdrangel/api/swagger/include/AIS.yaml index e006d3c08..e13f721f8 100644 --- a/swagger/sdrangel/api/swagger/include/AIS.yaml +++ b/swagger/sdrangel/api/swagger/include/AIS.yaml @@ -18,3 +18,11 @@ AISSettings: type: integer rollupState: $ref: "http://swgserver:8081/api/swagger/include/RollupState.yaml#/RollupState" + vesselColumnIndexes: + type: array + items: + type: integer + vesselColumnSizes: + type: array + items: + type: integer diff --git a/swagger/sdrangel/code/html2/index.html b/swagger/sdrangel/code/html2/index.html index 3fae3bb11..b912a018c 100644 --- a/swagger/sdrangel/code/html2/index.html +++ b/swagger/sdrangel/code/html2/index.html @@ -1245,6 +1245,18 @@ margin-bottom: 20px; }, "rollupState" : { "$ref" : "#/definitions/RollupState" + }, + "vesselColumnIndexes" : { + "type" : "array", + "items" : { + "type" : "integer" + } + }, + "vesselColumnSizes" : { + "type" : "array", + "items" : { + "type" : "integer" + } } }, "description" : "AIS settings" @@ -56629,7 +56641,7 @@ except ApiException as e:
- Generated 2022-11-13T19:59:19.161+01:00 + Generated 2022-11-20T11:19:42.122+01:00
diff --git a/swagger/sdrangel/code/qt5/client/SWGAISSettings.cpp b/swagger/sdrangel/code/qt5/client/SWGAISSettings.cpp index 1e4d6c919..1d504d9c9 100644 --- a/swagger/sdrangel/code/qt5/client/SWGAISSettings.cpp +++ b/swagger/sdrangel/code/qt5/client/SWGAISSettings.cpp @@ -44,6 +44,10 @@ SWGAISSettings::SWGAISSettings() { m_reverse_api_feature_index_isSet = false; rollup_state = nullptr; m_rollup_state_isSet = false; + vessel_column_indexes = new QList(); + m_vessel_column_indexes_isSet = false; + vessel_column_sizes = new QList(); + m_vessel_column_sizes_isSet = false; } SWGAISSettings::~SWGAISSettings() { @@ -68,6 +72,10 @@ SWGAISSettings::init() { m_reverse_api_feature_index_isSet = false; rollup_state = new SWGRollupState(); m_rollup_state_isSet = false; + vessel_column_indexes = new QList(); + m_vessel_column_indexes_isSet = false; + vessel_column_sizes = new QList(); + m_vessel_column_sizes_isSet = false; } void @@ -86,6 +94,8 @@ SWGAISSettings::cleanup() { if(rollup_state != nullptr) { delete rollup_state; } + + } SWGAISSettings* @@ -115,6 +125,10 @@ SWGAISSettings::fromJsonObject(QJsonObject &pJson) { ::SWGSDRangel::setValue(&rollup_state, pJson["rollupState"], "SWGRollupState", "SWGRollupState"); + + ::SWGSDRangel::setValue(&vessel_column_indexes, pJson["vesselColumnIndexes"], "QList", "qint32"); + + ::SWGSDRangel::setValue(&vessel_column_sizes, pJson["vesselColumnSizes"], "QList", "qint32"); } QString @@ -155,6 +169,12 @@ SWGAISSettings::asJsonObject() { if((rollup_state != nullptr) && (rollup_state->isSet())){ toJsonValue(QString("rollupState"), rollup_state, obj, QString("SWGRollupState")); } + if(vessel_column_indexes && vessel_column_indexes->size() > 0){ + toJsonArray((QList*)vessel_column_indexes, obj, "vesselColumnIndexes", ""); + } + if(vessel_column_sizes && vessel_column_sizes->size() > 0){ + toJsonArray((QList*)vessel_column_sizes, obj, "vesselColumnSizes", ""); + } return obj; } @@ -239,6 +259,26 @@ SWGAISSettings::setRollupState(SWGRollupState* rollup_state) { this->m_rollup_state_isSet = true; } +QList* +SWGAISSettings::getVesselColumnIndexes() { + return vessel_column_indexes; +} +void +SWGAISSettings::setVesselColumnIndexes(QList* vessel_column_indexes) { + this->vessel_column_indexes = vessel_column_indexes; + this->m_vessel_column_indexes_isSet = true; +} + +QList* +SWGAISSettings::getVesselColumnSizes() { + return vessel_column_sizes; +} +void +SWGAISSettings::setVesselColumnSizes(QList* vessel_column_sizes) { + this->vessel_column_sizes = vessel_column_sizes; + this->m_vessel_column_sizes_isSet = true; +} + bool SWGAISSettings::isSet(){ @@ -268,6 +308,18 @@ SWGAISSettings::isSet(){ if(rollup_state && rollup_state->isSet()){ isObjectUpdated = true; break; } + if(m_vessel_column_indexes_isSet){ + isObjectUpdated = true; break; + } + if(vessel_column_indexes && (vessel_column_indexes->size() > 0)){ + isObjectUpdated = true; break; + } + if(m_vessel_column_sizes_isSet){ + isObjectUpdated = true; break; + } + if(vessel_column_sizes && (vessel_column_sizes->size() > 0)){ + isObjectUpdated = true; break; + } }while(false); return isObjectUpdated; } diff --git a/swagger/sdrangel/code/qt5/client/SWGAISSettings.h b/swagger/sdrangel/code/qt5/client/SWGAISSettings.h index 79d660ea8..40e7daa0a 100644 --- a/swagger/sdrangel/code/qt5/client/SWGAISSettings.h +++ b/swagger/sdrangel/code/qt5/client/SWGAISSettings.h @@ -23,6 +23,7 @@ #include "SWGRollupState.h" +#include #include #include "SWGObject.h" @@ -67,6 +68,12 @@ public: SWGRollupState* getRollupState(); void setRollupState(SWGRollupState* rollup_state); + QList* getVesselColumnIndexes(); + void setVesselColumnIndexes(QList* vessel_column_indexes); + + QList* getVesselColumnSizes(); + void setVesselColumnSizes(QList* vessel_column_sizes); + virtual bool isSet() override; @@ -95,6 +102,12 @@ private: SWGRollupState* rollup_state; bool m_rollup_state_isSet; + QList* vessel_column_indexes; + bool m_vessel_column_indexes_isSet; + + QList* vessel_column_sizes; + bool m_vessel_column_sizes_isSet; + }; }