Mercurial > retraceit
diff src/filterwidget.cpp @ 14:315e6988952a
Only add entries that do not start with # to filter
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Tue, 14 Apr 2015 17:25:15 +0200 |
parents | e4748da7140b |
children | 73efe717b944 |
line wrap: on
line diff
--- a/src/filterwidget.cpp Tue Apr 14 13:43:43 2015 +0200 +++ b/src/filterwidget.cpp Tue Apr 14 17:25:15 2015 +0200 @@ -28,8 +28,18 @@ QAbstractItemModel *newSource = mModel->sourceModel(); Q_ASSERT(newSource); mCombo->clear(); + mColFilterMap.clear(); + int addedItems = 0; for (int i=0; i < newSource->columnCount(); i++) { - mCombo->addItem(newSource->headerData(i, Qt::Horizontal).toString()); + QString entry = newSource->headerData(i, Qt::Horizontal).toString(); + if (!entry.startsWith("#")) { + mCombo->addItem(entry); + mColFilterMap.insert(addedItems++, i); + } else { + QString shortended = entry.remove(0,1); + // TODO this does not work as expected + newSource->setHeaderData(i, Qt::Horizontal, shortended); + } } } @@ -38,7 +48,9 @@ if (filterText.size() < 1) { return; } - mModel->setFilterKeyColumn(mCombo->currentIndex()); + qDebug() << "Filter on Column: " << mColFilterMap.value(mCombo->currentIndex()); + qDebug() << "Instead of: " << mCombo->currentIndex(); + mModel->setFilterKeyColumn(mColFilterMap.value(mCombo->currentIndex())); mModel->setFilterWildcard(filterText); }