calamares/src/libcalamaresui/utils/qjsonitem.h
Adriaan de Groot 24f26ee7c8 Licensing: add header to QJsonModel copyright
- mention that this is shipped as part of Calamares
 - SPDX info
2017-09-19 16:26:23 +02:00

47 lines
1 KiB
C++

/* === This file is part of Calamares - <https://github.com/calamares> ===
*
* SPDX-License-Identifier: GPL-3.0+
* License-Filename: LICENSES/GPLv3+-QJsonModel
*/
#ifndef JSONITEM_H
#define JSONITEM_H
#include <QtCore>
#include <QJsonValue>
#include <QJsonArray>
#include <QJsonObject>
class QJsonTreeItem
{
public:
QJsonTreeItem(QJsonTreeItem * parent = 0);
~QJsonTreeItem();
void appendChild(QJsonTreeItem * item);
QJsonTreeItem *child(int row);
QJsonTreeItem *parent();
int childCount() const;
int row() const;
void setKey(const QString& key);
void setValue(const QString& value);
void setType(const QJsonValue::Type& type);
QString key() const;
QString value() const;
QJsonValue::Type type() const;
static QJsonTreeItem* load(const QJsonValue& value, QJsonTreeItem * parent = 0);
protected:
private:
QString mKey;
QString mValue;
QJsonValue::Type mType;
QList<QJsonTreeItem*> mChilds;
QJsonTreeItem * mParent;
};
#endif // JSONITEM_H