mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-05-03 16:25:54 +08:00
Ref T362, allow also to load container JSON format directly (not only CVariant container format)
This commit is contained in:
@@ -1334,7 +1334,7 @@ namespace BlackGui
|
|||||||
// then name here is mainly set for debugging purposes so each model can be identified
|
// then name here is mainly set for debugging purposes so each model can be identified
|
||||||
Q_ASSERT(m_model);
|
Q_ASSERT(m_model);
|
||||||
QTableView::setObjectName(name);
|
QTableView::setObjectName(name);
|
||||||
QString modelName = QString(name).append(':').append(m_model->getTranslationContext());
|
const QString modelName = QString(name).append(':').append(m_model->getTranslationContext());
|
||||||
m_model->setObjectName(modelName);
|
m_model->setObjectName(modelName);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1555,6 +1555,11 @@ namespace BlackGui
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ContainerType container;
|
||||||
|
|
||||||
|
if (jsonObject.contains("type") && jsonObject.contains("value"))
|
||||||
|
{
|
||||||
|
// read from variant format
|
||||||
CVariant containerVariant;
|
CVariant containerVariant;
|
||||||
containerVariant.convertFromJson(jsonObject);
|
containerVariant.convertFromJson(jsonObject);
|
||||||
if (!containerVariant.canConvert<ContainerType>())
|
if (!containerVariant.canConvert<ContainerType>())
|
||||||
@@ -1562,7 +1567,14 @@ namespace BlackGui
|
|||||||
m = CStatusMessage(this).warning("No valid swift JSON '%1'") << fileName;
|
m = CStatusMessage(this).warning("No valid swift JSON '%1'") << fileName;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
ContainerType container = containerVariant.value<ContainerType>();
|
container = containerVariant.value<ContainerType>();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// container format directly
|
||||||
|
container.convertFromJson(jsonObject);
|
||||||
|
}
|
||||||
|
|
||||||
const int countBefore = container.size();
|
const int countBefore = container.size();
|
||||||
m = this->modifyLoadedJsonData(container);
|
m = this->modifyLoadedJsonData(container);
|
||||||
if (m.isFailure()) { break; } // modification error
|
if (m.isFailure()) { break; } // modification error
|
||||||
|
|||||||
Reference in New Issue
Block a user