summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2012-01-06 22:18:25 (GMT)
committerKevin Smith <git@kismith.co.uk>2012-01-23 14:51:26 (GMT)
commit83afa3d4bf18e4feb8a33d084ed181508084fc64 (patch)
treeb81a0c6eaaedbad3f3e607ea52a69acf98f95eff /Swift/QtUI/QtFormResultItemModel.h
parent093d499945d779cfed92b45e413644834004b0d9 (diff)
downloadswift-contrib-83afa3d4bf18e4feb8a33d084ed181508084fc64.zip
swift-contrib-83afa3d4bf18e4feb8a33d084ed181508084fc64.tar.bz2
XEP-0004 form support for user search.
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
Diffstat (limited to 'Swift/QtUI/QtFormResultItemModel.h')
-rw-r--r--Swift/QtUI/QtFormResultItemModel.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/Swift/QtUI/QtFormResultItemModel.h b/Swift/QtUI/QtFormResultItemModel.h
new file mode 100644
index 0000000..f383f74
--- /dev/null
+++ b/Swift/QtUI/QtFormResultItemModel.h
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2012 Tobias Markmann
+ * Licensed under the simplified BSD license.
+ * See Documentation/Licenses/BSD-simplified.txt for more information.
+ */
+
+#pragma once
+
+#include <QAbstractTableModel>
+
+#include <Swiften/Elements/Form.h>
+
+namespace Swift {
+
+class QtFormResultItemModel : public QAbstractTableModel {
+ Q_OBJECT
+ public:
+ QtFormResultItemModel(QObject* parent);
+ QtFormResultItemModel(QObject* parent, Form::ref formResult);
+
+ void setForm(Form::ref formResult);
+ const Form::ref getForm() const;
+
+ virtual QVariant headerData(int section, Qt::Orientation orientation, int role) const;
+ virtual int rowCount(const QModelIndex &parent = QModelIndex()) const;
+ virtual int columnCount(const QModelIndex &parent = QModelIndex()) const;
+ virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
+
+ private:
+ const std::string getFieldValue(const Form::FormItem& item, const int column) const;
+
+ private:
+ Form::ref formResult_;
+};
+
+}