From fae694be15ccf24cacc4ec9923a0a04477ed5972 Mon Sep 17 00:00:00 2001 From: Samson Chu Date: Wed, 9 Aug 2023 18:35:25 -0400 Subject: [PATCH] #25 Extend json() method in QJsonModel to take a parameter whether or not to format the output compact. Be default it is false to lessen impact on existing use of this method. --- qjsonmodel.cpp | 6 +++--- qjsonmodel.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/qjsonmodel.cpp b/qjsonmodel.cpp index c035a0b..179c41b 100644 --- a/qjsonmodel.cpp +++ b/qjsonmodel.cpp @@ -399,7 +399,7 @@ Qt::ItemFlags QJsonModel::flags(const QModelIndex &index) const return QAbstractItemModel::flags(index); } -QByteArray QJsonModel::json() +QByteArray QJsonModel::json(bool compact) { auto jsonValue = genJson(mRootItem); QByteArray json; @@ -407,9 +407,9 @@ QByteArray QJsonModel::json() return json; if (jsonValue.isArray()) - arrayToJson(jsonValue.toArray(), json, 0, false); + arrayToJson(jsonValue.toArray(), json, 0, compact); else - objectToJson(jsonValue.toObject(), json, 0, false); + objectToJson(jsonValue.toObject(), json, 0, compact); return json; } diff --git a/qjsonmodel.h b/qjsonmodel.h index 8efe7ff..e489285 100644 --- a/qjsonmodel.h +++ b/qjsonmodel.h @@ -315,7 +315,7 @@ class QJsonModel : public QAbstractItemModel int rowCount(const QModelIndex &parent = QModelIndex()) const override; int columnCount(const QModelIndex &parent = QModelIndex()) const override; Qt::ItemFlags flags(const QModelIndex &index) const override; - QByteArray json(); + QByteArray json(bool compact = false); QByteArray jsonToByte(QJsonValue jsonValue); void objectToJson(QJsonObject jsonObject, QByteArray &json, int indent, bool compact); void arrayToJson(QJsonArray jsonArray, QByteArray &json, int indent, bool compact);