Wed, 06 Apr 2022 21:41:58 +0200
Load miscs in QList.
src/EditRecipe.cpp | file | annotate | diff | comparison | revisions | |
src/EditRecipe.h | file | annotate | diff | comparison | revisions |
--- 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);
--- 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;