summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Smith <git@kismith.co.uk>2009-07-26 12:39:50 (GMT)
committerKevin Smith <git@kismith.co.uk>2009-07-26 12:39:50 (GMT)
commita28d92f3458218d6effbfdd9a42bf8fbe8b8aa72 (patch)
treef666c221dcc899704bb80f67afe383e58b780669 /Swift/QtUI/Roster/QtTreeWidgetFactory.h
parentc4660f404c9a0dbf1c00a20baacfc738d93eaff5 (diff)
downloadswift-a28d92f3458218d6effbfdd9a42bf8fbe8b8aa72.zip
swift-a28d92f3458218d6effbfdd9a42bf8fbe8b8aa72.tar.bz2
Begin to assage Swift model into Qt Model/View.
Diffstat (limited to 'Swift/QtUI/Roster/QtTreeWidgetFactory.h')
-rw-r--r--Swift/QtUI/Roster/QtTreeWidgetFactory.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/Swift/QtUI/Roster/QtTreeWidgetFactory.h b/Swift/QtUI/Roster/QtTreeWidgetFactory.h
new file mode 100644
index 0000000..353f697
--- /dev/null
+++ b/Swift/QtUI/Roster/QtTreeWidgetFactory.h
@@ -0,0 +1,41 @@
+#ifndef SWIFT_QtTreeWidgetFactory_H
+#define SWIFT_QtTreeWidgetFactory_H
+
+#include "Swiften/Roster/TreeWidgetFactory.h"
+#include "Swiften/Roster/TreeWidget.h"
+#include "Swiften/Roster/TreeWidgetItem.h"
+#include "Swift/QtUI/Roster/QtTreeWidgetItem.h"
+#include "Swift/QtUI/Roster/QtTreeWidget.h"
+
+namespace Swift {
+
+class QtTreeWidgetFactory : public TreeWidgetFactory {
+ public:
+ QtTreeWidgetFactory() {
+ }
+
+ TreeWidget* createTreeWidget() {
+ return new QtTreeWidget();
+ }
+
+ TreeWidgetItem* createTreeWidgetItem(TreeWidgetItem* item) {
+ QtTreeWidgetItem* qtItem = dynamic_cast<QtTreeWidgetItem*>(item);
+ assert(qtItem);
+ QtTreeWidgetItem* newItem = new QtTreeWidgetItem(qtItem);
+ qtItem->addChild(newItem);
+ return newItem;
+ }
+
+ TreeWidgetItem* createTreeWidgetItem(TreeWidget* item) {
+ QtTreeWidget* qtItem = dynamic_cast<QtTreeWidget*>(item);
+ assert(qtItem);
+ QtTreeWidgetItem* newItem = new QtTreeWidgetItem(qtItem);
+ //qtItem->setItemWidget(newItem, 0, newItem->getCollapsedRosterWidget());
+ qtItem->addChild(newItem);
+ return newItem;
+ }
+};
+
+}
+#endif
+