diff options
Diffstat (limited to 'seriestreewidget.cpp')
-rw-r--r-- | seriestreewidget.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/seriestreewidget.cpp b/seriestreewidget.cpp index 5fb7d2c..816a293 100644 --- a/seriestreewidget.cpp +++ b/seriestreewidget.cpp @@ -58,11 +58,13 @@ SeriesTreeWidget::SeriesTreeWidget(QWidget *parent) : QWidget(parent){ void SeriesTreeWidget::newSeries(){ QList<QVariant> data; - data << tr("<New series>") << -1 << -1 << 0 << SeriesTreeModel::NewSeries; + data << tr("<New series>") << QVariant() << QVariant() << QVariant() << SeriesTreeModel::NewSeries; if(mModel->addRow(data, QModelIndex())){ QModelIndex newRow = mModel->index(mModel->rowCount(QModelIndex()) - 1, 0, QModelIndex()); if(newRow.isValid()){ - mView->edit(newRow); + QModelIndex proxyIndex = mProxy->mapFromSource(newRow); + mView->selectionModel()->setCurrentIndex(proxyIndex, QItemSelectionModel::ClearAndSelect); + mView->edit(proxyIndex); } } } @@ -73,6 +75,7 @@ void SeriesTreeWidget::filter(){ void SeriesTreeWidget::resort(){ mView->sortByColumn(0, mProxy->sortOrder()); + mView->scrollTo(mView->selectionModel()->currentIndex(), QAbstractItemView::PositionAtCenter); } SeriesTreeView::SeriesTreeView(QWidget *parent) : QTreeView(parent) {} |