--- a/ui/qt/tree.cpp Sat Sep 17 19:57:55 2016 +0200 +++ b/ui/qt/tree.cpp Sun Sep 18 07:45:42 2016 +0200 @@ -46,6 +46,8 @@ ListModel *model = new ListModel(obj, view, list, getvalue, f, udata); view->setModel(model); + // TODO: observer update + QItemSelectionModel *s = view->selectionModel(); QObject::connect( s, @@ -84,6 +86,15 @@ view->setItemsExpandable(false); view->setRootIsDecorated(false); + // TODO: observer update + UiTableView *u = new UiTableView(); + u->widget = view; + u->model = model; + list->list->observers = ui_add_observer( + list->list->observers, + (ui_callback)ui_table_update, + u); + view->setSelectionMode(QAbstractItemView::ExtendedSelection); QItemSelectionModel *s = view->selectionModel(); QObject::connect( @@ -103,6 +114,15 @@ return view; } +void ui_table_update(UiEvent *event, UiTableView *view) { + // TODO + printf("update\n"); + + //view->model->update(); + view->widget->setModel(NULL); + view->widget->setModel(view->model); +} + UIWIDGET ui_table(UiObject *obj, UiList *list, UiModelInfo *modelinfo) { UiListPtr *listptr = (UiListPtr*)ucx_mempool_malloc(obj->ctx->mempool, sizeof(UiListPtr)); listptr->list = list;