summaryrefslogtreecommitdiffstats
path: root/mappingtreemodel.h
diff options
context:
space:
mode:
Diffstat (limited to 'mappingtreemodel.h')
-rw-r--r--mappingtreemodel.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/mappingtreemodel.h b/mappingtreemodel.h
index 6b20dbc..3f3b903 100644
--- a/mappingtreemodel.h
+++ b/mappingtreemodel.h
@@ -10,6 +10,7 @@
#include <QSqlDatabase>
#include <QSqlError>
+#include <QMetaType>
#include "smtreemodel.h"
@@ -41,6 +42,7 @@ class MappingTreeModel : public SmTreeModel {
bool renameChild(const QModelIndex &idx, const QString newName);
bool deleteChild(const QModelIndex &idx);
MappingData mappingDataFromIndex(QModelIndex &idx) const;
+ MappingData mappingDataFromItem(SmTreeItem *item) const;
const QSqlError &lastError() const { return mLastError; }
public slots:
@@ -87,6 +89,7 @@ class MappingTreeResultModel : public SmTreeModel {
virtual bool setData(const QModelIndex &index, const QVariant &value, int role);
QList<QVariant> getMappings(SmTreeItem *start) const;
QList<QVariant> columnValues(int column) const;
+ const QList<MappingData> mappingData() const { return mCurrentData; }
void clearData();
public slots:
@@ -95,11 +98,17 @@ class MappingTreeResultModel : public SmTreeModel {
private:
int hasChild(SmTreeItem *item, const QVariant &name, int column = 0) const;
+ MappingTreeModel *mSourceModel;
QList<QVariant> columnValuesRecursive(SmTreeItem *parent, int column) const;
+ QList<MappingData> mCurrentData;
};
+Q_DECLARE_METATYPE(MappingData)
+
struct MappingData {
MappingData();
+ bool operator==(const MappingData &other);
+ //QDataStream &operator<<(QDataStream &out, const MappingData &d);
bool isValid();
int mappingId;
int descId;
@@ -108,4 +117,8 @@ struct MappingData {
QStringList path;
};
+QDataStream &operator<<(QDataStream &out, const MappingData &d);
+QDataStream &operator>>(QDataStream &in, MappingData &v);
+
+
#endif // MAPPINGTREEMODEL_H