From 67ddb23a59cb56bd917db2d9c3c7bc62c96e53b4 Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 25 Feb 2012 16:52:48 +0100 Subject: Implemented mapping widget for NewPicsDialog Make it possible to add mappings to new pictures. This actually was a tough one. Maybe I shouldn't drink and code. Next: make NewPicsDialog actually do something. --- mappingtreemodel.h | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'mappingtreemodel.h') diff --git a/mappingtreemodel.h b/mappingtreemodel.h index 451ab83..a37e364 100644 --- a/mappingtreemodel.h +++ b/mappingtreemodel.h @@ -14,6 +14,8 @@ class QSqlQuery; class SmTreeItem; +class MappingData; +class SmTreeItem; class MappingTreeModel : public SmTreeModel { Q_OBJECT @@ -69,4 +71,31 @@ class MappingTreeModel : public SmTreeModel { }; +class MappingTreeResultModel : public SmTreeModel { + Q_OBJECT + public: + enum Roles { NameRole = Qt::UserRole + 1 }; + enum Fields { Name = 0 }; + enum { NumFields = 1 }; + explicit MappingTreeResultModel(const QStringList &headers, QObject *parent = 0); + + //data + flags + Qt::ItemFlags flags(const QModelIndex &index) const; + bool setData(const QModelIndex &index, const QVariant &value, int role); + QModelIndex insertChild(const QVariant &data, SmTreeItem *parent); + + public slots: + void addItem(const MappingData &data); + + + private: + int hasChild(SmTreeItem *item, const QVariant &name, int column = 0) const; +}; + +struct MappingData { + int id; + QString name; + QStringList path; +}; + #endif // MAPPINGTREEMODEL_H -- cgit v1.2.3-70-g09d2