Skip to content
Extraits de code Groupes Projets
Vérifiée Valider 767f234e rédigé par Kubat's avatar Kubat
Parcourir les fichiers

UI: Fix the PropertyModel::Item creation for "ordered QJsonObjects"

parent 07d11cac
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!18Implement the VivyDocument specification
...@@ -107,13 +107,12 @@ PropertyModel::Item::createChild(Item *root, QJsonObject::ConstIterator const &i ...@@ -107,13 +107,12 @@ PropertyModel::Item::createChild(Item *root, QJsonObject::ConstIterator const &i
} }
PropertyModel::Item * PropertyModel::Item *
PropertyModel::Item::createChild(Item *root, QJsonArray const &singleElemArray) noexcept PropertyModel::Item::createChild(Item *root, QJsonObject const &singleElem) noexcept
{ {
Q_ASSERT(singleElemArray.count() == 1); Q_ASSERT(singleElem.count() == 1);
const QJsonValue v = singleElemArray.at(0); const QString key = singleElem.keys().at(0);
const QString key = v.toObject().keys().at(0); const QJsonValue val = singleElem.value(key);
const QJsonValue val = v.toObject().value(key);
Item *child = fromJson(val, root); Item *child = fromJson(val, root);
child->setKey(key); child->setKey(key);
...@@ -144,8 +143,10 @@ PropertyModel::Item::fromJson(const QJsonValue &value, PropertyModel::Item *pare ...@@ -144,8 +143,10 @@ PropertyModel::Item::fromJson(const QJsonValue &value, PropertyModel::Item *pare
root->appendChild(createChild(root, it)); root->appendChild(createChild(root, it));
} }
else if (isOrderedJsonObject(value)) else if (isOrderedJsonObject(value)) {
root->appendChild(createChild(root, value.toArray())); for (const QJsonValue v : value.toArray())
root->appendChild(createChild(root, v.toObject()));
}
else if (value.isArray()) { else if (value.isArray()) {
for (int index = 0; const QJsonValue v : value.toArray()) { for (int index = 0; const QJsonValue v : value.toArray()) {
......
...@@ -46,7 +46,7 @@ private: ...@@ -46,7 +46,7 @@ private:
private: private:
static bool isOrderedJsonObject(QJsonValue const &) noexcept; static bool isOrderedJsonObject(QJsonValue const &) noexcept;
static Item *createChild(Item *root, QJsonObject::ConstIterator const &) noexcept; static Item *createChild(Item *root, QJsonObject::ConstIterator const &) noexcept;
static Item *createChild(Item *root, QJsonArray const &) noexcept; static Item *createChild(Item *root, QJsonObject const &) noexcept;
static Item *createChild(Item *root, int pos, QJsonValue const &) noexcept; static Item *createChild(Item *root, int pos, QJsonValue const &) noexcept;
QString key{}; QString key{};
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter