# HG changeset patch # User Michiel Broek # Date 1649274118 -7200 # Node ID 9e0dfa78f349e6e13b43e9d92f3f432748f85440 # Parent 04f5a7c5a1dc259a17ed106785520ee2133aff3d Load miscs in QList. diff -r 04f5a7c5a1dc -r 9e0dfa78f349 src/EditRecipe.cpp --- a/src/EditRecipe.cpp Wed Apr 06 21:23:00 2022 +0200 +++ b/src/EditRecipe.cpp Wed Apr 06 21:41:58 2022 +0200 @@ -206,9 +206,25 @@ const auto& m_json = query.value(86).toString(); if (!m_json.trimmed().isEmpty()) { const auto& formattedJson = QString("%1").arg(m_json); - this->miscs = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError); - if (parseError.error != QJsonParseError::NoError) - qDebug() << "Parse error: " << parseError.errorString() << "at" << parseError.offset ; + QJsonDocument miscs = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError); + if (parseError.error != QJsonParseError::NoError) { + qDebug() << "Parse error: " << parseError.errorString() << "at" << parseError.offset; + } else if (miscs.isArray()) { + for (int i = 0; i < miscs.array().size(); i++) { + QJsonObject obj = miscs.array().at(i).toObject(); + qDebug() << i << obj; + Miscs m; + m.m_name = obj["m_name"].toString(); + m.m_amount = obj["m_amount"].toDouble(); + m.m_type = obj["m_type"].toInt(); + m.m_use_use = obj["m_type"].toInt(); + m.m_time = obj["m_time"].toDouble(); + m.m_amount_is_weight = obj["m_amount_is_weight"].toInt() ? true:false; + m.m_cost = obj["m_cost"].toDouble(); + recipe->miscs.append(m); + } + qDebug() << "miscs" << recipe->miscs.size(); + } } else { qDebug() << "empty miscs"; } @@ -358,7 +374,6 @@ const auto& formattedJson = QString("[]"); this->hops = QJsonDocument::fromJson(formattedJson.toUtf8()); - this->miscs = QJsonDocument::fromJson(formattedJson.toUtf8()); } ui->lockedEdit->setChecked(recipe->locked); diff -r 04f5a7c5a1dc -r 9e0dfa78f349 src/EditRecipe.h --- a/src/EditRecipe.h Wed Apr 06 21:23:00 2022 +0200 +++ b/src/EditRecipe.h Wed Apr 06 21:41:58 2022 +0200 @@ -71,7 +71,7 @@ double m_amount; int m_type; int m_use_use; - int m_time; + double m_time; bool m_amount_is_weight; double m_cost; }; @@ -290,7 +290,7 @@ /* * Variables for popup ingredients editing. */ - QJsonDocument hops, miscs; + QJsonDocument hops; QComboBox *selectEdit, *addedEdit; QLineEdit *nameEdit, *supplierEdit; QDoubleSpinBox *amountEdit, *pctEdit, *maxEdit;