chore: migrate map settings to json string

Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
Trial97 2025-05-21 18:17:08 +03:00
parent 89be378ef6
commit 8c710fb8de
No known key found for this signature in database
GPG key ID: 55EF5DA53DB36318
8 changed files with 54 additions and 22 deletions

View file

@ -44,6 +44,7 @@
#include <QJsonObject>
#include "Application.h"
#include "Json.h"
#include "settings/INISettingsObject.h"
#include "settings/OverrideSetting.h"
#include "settings/Setting.h"
@ -202,25 +203,25 @@ bool BaseInstance::shouldStopOnConsoleOverflow() const
QStringList BaseInstance::getLinkedInstances() const
{
return m_settings->get("linkedInstances").toStringList();
auto setting = m_settings->get("linkedInstances").toString();
return Json::toStringList(setting);
}
void BaseInstance::setLinkedInstances(const QStringList& list)
{
auto linkedInstances = m_settings->get("linkedInstances").toStringList();
m_settings->set("linkedInstances", list);
m_settings->set("linkedInstances", Json::fromStringList(list));
}
void BaseInstance::addLinkedInstanceId(const QString& id)
{
auto linkedInstances = m_settings->get("linkedInstances").toStringList();
auto linkedInstances = getLinkedInstances();
linkedInstances.append(id);
setLinkedInstances(linkedInstances);
}
bool BaseInstance::removeLinkedInstanceId(const QString& id)
{
auto linkedInstances = m_settings->get("linkedInstances").toStringList();
auto linkedInstances = getLinkedInstances();
int numRemoved = linkedInstances.removeAll(id);
setLinkedInstances(linkedInstances);
return numRemoved > 0;
@ -228,7 +229,7 @@ bool BaseInstance::removeLinkedInstanceId(const QString& id)
bool BaseInstance::isLinkedToInstanceId(const QString& id) const
{
auto linkedInstances = m_settings->get("linkedInstances").toStringList();
auto linkedInstances = getLinkedInstances();
return linkedInstances.contains(id);
}