Save and reestore scrollbar position on editing the items.

Save and restore scrollbar position on editing the dives.
I think this is not the best place for it, but I'll leave
it here for a while untill I find a better place.

Fixes: #343
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Tomaz Canabrava 2013-12-11 23:08:56 -02:00 committed by Dirk Hohndel
parent 9a497b1cb0
commit 5ac29bbe74

View file

@ -23,6 +23,7 @@
#include <QSettings> #include <QSettings>
#include <QTableView> #include <QTableView>
#include <QPalette> #include <QPalette>
#include <QScrollBar>
MainTab::MainTab(QWidget *parent) : QTabWidget(parent), MainTab::MainTab(QWidget *parent) : QTabWidget(parent),
weightModel(new WeightModel()), weightModel(new WeightModel()),
@ -633,7 +634,7 @@ void MainTab::acceptChanges()
if (d) if (d)
fixup_dive(d); fixup_dive(d);
} }
int scrolledBy = mainWindow()->dive_list()->verticalScrollBar()->sliderPosition();
resetPallete(); resetPallete();
if(editMode == ADD || editMode == MANUALLY_ADDED_DIVE){ if(editMode == ADD || editMode == MANUALLY_ADDED_DIVE){
mainWindow()->dive_list()->unselectDives(); mainWindow()->dive_list()->unselectDives();
@ -659,6 +660,7 @@ void MainTab::acceptChanges()
mainWindow()->refreshDisplay(); mainWindow()->refreshDisplay();
mainWindow()->dive_list()->restoreSelection(); mainWindow()->dive_list()->restoreSelection();
} }
mainWindow()->dive_list()->verticalScrollBar()->setSliderPosition(scrolledBy);
} }
void MainTab::resetPallete() void MainTab::resetPallete()