4
* Created on: 10 Jun 2014
8
#ifndef NG_PREVIEW_SETTTINGSMODEL_H_
9
#define NG_PREVIEW_SETTTINGSMODEL_H_
11
#include <libu1db-qt5/database.h>
12
#include <libu1db-qt5/document.h>
13
#include <unity/SymbolExport.h>
14
#include <unity/shell/scopes/SettingsModelInterface.h>
16
#include <QAbstractListModel>
18
#include <QSharedPointer>
23
class SettingsModel: public unity::shell::scopes::SettingsModelInterface
34
Data(QString const& id_, QString const& displayName_,
35
QString const& type_, QVariantMap const& data_)
36
: id(id_), displayName(displayName_), type(type_), data(data_)
42
explicit SettingsModel(const QString& scopeId, const QByteArray& json,
45
QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const
48
int rowCount(const QModelIndex& parent = QModelIndex()) const override;
51
void setValue(const QString& settingName, const QVariant& value);
54
QList<QSharedPointer<Data>> m_data;
56
U1db::Database m_database;
58
QMap<QString, QSharedPointer<U1db::Document>> m_documents;
63
Q_DECLARE_METATYPE(scopes_ng::SettingsModel*)
65
#endif /* NG_PREVIEW_SETTTINGSMODEL_H_ */