diff -r 338ebdc9b947 -r 14f2b1b15242 treeeditor.cpp --- a/treeeditor.cpp Fri Oct 02 14:31:03 2009 +0000 +++ b/treeeditor.cpp Fri Nov 13 08:32:03 2009 +0000 @@ -8,19 +8,17 @@ #include "vymmodel.h" -#include "mysortfilterproxymodel.h" - /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// TreeEditor::TreeEditor(VymModel *m) { model=m; -// MySortFilterProxyModel *proxyModel = new MySortFilterProxyModel(this); // FIXME-1 trying to use proxy... - proxyModel = new QSortFilterProxyModel (this); - - setModel(proxyModel); - proxyModel->setSourceModel(model); + // FIXME-2 use proxmodel + //proxyModel = new MySortFilterProxyModel(this); + //setModel(proxyModel); + setModel(m); + //proxyModel->setSourceModel(model); QAction *a; // Shortcuts for navigating with cursor: @@ -44,14 +42,23 @@ //cout <<"Destructor TreeEditor for "<getMapName().toStdString()<selectedIndexes(); + if (list.isEmpty() ) + return QModelIndex(); + else + return list.first(); +} + + void TreeEditor::setSortFilter(QString s) { - cout << "TE::setting sortFilter to "<setFilterRegExp(QRegExp(s, Qt::CaseInsensitive)); proxyModel->setFilterKeyColumn(0); proxyModel->setDynamicSortFilter (true); @@ -59,11 +66,19 @@ void TreeEditor::cursorUp() { - model->select (indexAbove (model->getSelectedIndex() )); + QModelIndex ix=getSelectedIndex(); + // FIXME-2 useproxymodel ix=proxyModel->mapToSource (indexAbove(ix)); + ix=indexAbove (ix); + if (ix.isValid()) + model->select (ix ); } void TreeEditor::cursorDown() { - model->select (indexBelow (model->getSelectedIndex() )); + QModelIndex ix=getSelectedIndex(); + //FIXME-2 useProxymodel ix=proxyModel->mapToSource (indexBelow(ix)); + ix=indexBelow (ix); + if (ix.isValid()) + model->select (ix ); }