summaryrefslogtreecommitdiffstats
path: root/seriestreewidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'seriestreewidget.cpp')
-rw-r--r--seriestreewidget.cpp7
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) {}