From 37e7984e152898e801a783777e81a3e878425cdb Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava Date: Wed, 13 Nov 2013 16:59:56 -0200 Subject: Fix Last Column adding a horizontal Scroll on the Dive List. Fixes the last column adding a horizontal scroll on the dive list, since we have the hability to show / hide columns, I had to create a helper method to discover what is the last column and set the size of it very small so no scroll is created. Also, I'v set the setStrechLastSection to true. :) Signed-off-by: Tomaz Canabrava Signed-off-by: Dirk Hohndel --- qt-ui/divelistview.cpp | 14 ++++++++++++++ qt-ui/divelistview.h | 1 + 2 files changed, 15 insertions(+) (limited to 'qt-ui') diff --git a/qt-ui/divelistview.cpp b/qt-ui/divelistview.cpp index f2ca6a399..9c30f99e4 100644 --- a/qt-ui/divelistview.cpp +++ b/qt-ui/divelistview.cpp @@ -37,6 +37,7 @@ DiveListView::DiveListView(QWidget *parent) : QTreeView(parent), mouseClickSelec header()->setContextMenuPolicy(Qt::ActionsContextMenu); const QFontMetrics metrics(defaultModelFont()); header()->setMinimumHeight(metrics.height() + 10); + header()->setStretchLastSection(true); QAction *showSearchBox = new QAction(tr("Show Search Box"), this); showSearchBox->setShortcut( Qt::CTRL + Qt::Key_F); showSearchBox->setShortcutContext(Qt::ApplicationShortcut); @@ -87,6 +88,18 @@ void DiveListView::setupUi(){ else collapseAll(); firstRun = false; + setColumnWidth(lastVisibleColumn(), 10); +} + +int DiveListView::lastVisibleColumn() +{ + int lastColumn = -1; + for (int i = DiveTripModel::NR; i < DiveTripModel::COLUMNS; i++) { + if(isColumnHidden(i)) + continue; + lastColumn = i; + } + return lastColumn; } void DiveListView::backupExpandedRows(){ @@ -320,6 +333,7 @@ void DiveListView::toggleColumnVisibilityByIndex() s.endGroup(); s.sync(); setColumnHidden(action->property("index").toInt(), !action->isChecked()); + setColumnWidth(lastVisibleColumn(), 10); } void DiveListView::currentChanged(const QModelIndex& current, const QModelIndex& previous) diff --git a/qt-ui/divelistview.h b/qt-ui/divelistview.h index bcd603e12..222a9929a 100644 --- a/qt-ui/divelistview.h +++ b/qt-ui/divelistview.h @@ -62,6 +62,7 @@ private: void setupUi(); void backupExpandedRows(); void restoreExpandedRows(); + int lastVisibleColumn(); }; #endif // DIVELISTVIEW_H -- cgit v1.2.3-70-g09d2