ui/qt/tree.cpp

changeset 69
419c8c3209e8
parent 66
8d490d97aab8
child 72
a00b46d92c54
--- a/ui/qt/tree.cpp	Fri Jan 09 14:33:40 2015 +0100
+++ b/ui/qt/tree.cpp	Sat Jan 10 10:14:28 2015 +0100
@@ -29,11 +29,31 @@
 #include "tree.h"
 #include "container.h"
 
+#include <QTreeView>
+#include <QTreeWidgetItem>
+
 UIWIDGET ui_table_var(UiObject *obj, UiListPtr *list, UiModelInfo *modelinfo) {
-    QTableView *view = new QTableView();
-    TableModel *model = new TableModel(list, modelinfo);
+    QTreeView *view = new QTreeView();
+    TableModel *model = new TableModel(obj, view, list, modelinfo);
     view->setModel(model);
     
+    view->setItemsExpandable(false);
+    view->setRootIsDecorated(false);   
+    
+    view->setSelectionMode(QAbstractItemView::ExtendedSelection);
+    QItemSelectionModel *s = view->selectionModel();
+    QObject::connect(
+            s,
+            SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
+            model,
+            SLOT(selectionChanged(const QItemSelection &, const QItemSelection &)));
+    QObject::connect(
+            view,
+            SIGNAL(doubleClicked(const QModelIndex &)),
+            model,
+            SLOT(activate(const QModelIndex &)));
+    
+    
     UiContainer *ct = uic_get_current_container(obj); 
     ct->add(view, true);
     return view;

mercurial