summaryrefslogtreecommitdiff
path: root/src/mobile/models/roleitemmodel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mobile/models/roleitemmodel.h')
-rw-r--r--src/mobile/models/roleitemmodel.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/mobile/models/roleitemmodel.h b/src/mobile/models/roleitemmodel.h
new file mode 100644
index 0000000..46f02be
--- /dev/null
+++ b/src/mobile/models/roleitemmodel.h
@@ -0,0 +1,24 @@
+#ifndef ROLEITEMMODEL_H
+#define ROLEITEMMODEL_H
+
+#include <QStandardItemModel>
+
+/* class to allow easily exposing
+ C++ data as a model for QML View.
+*/
+
+class RoleItemModel : public QStandardItemModel {
+public:
+ // roleNames is a map describing what role id (e.g. Qt::UserRole+1)
+ // is associated with what name on QML side (e.g. 'bookTitle')
+ // RoleItemModel(const QHash<int, QByteArray> &roleNames);
+
+ QHash<int, QByteArray> roleNames() const;
+ void setRoleNames(const QHash<int, QByteArray> &roleNames);
+
+private:
+ QHash<int, QByteArray> m_roleNames;
+
+};
+
+#endif // ROLEITEMMODEL_H