From 306a945b869f443420b5f36ac3e1d625da0969c1 Mon Sep 17 00:00:00 2001 From: dt Date: Mon, 28 Mar 2011 14:30:02 +0200 Subject: Navigation Tree View: Fix width of column We want to have the width both to be at least the contents size but also stretch to width of the viewport. Reviewed-By: con --- src/libs/utils/navigationtreeview.cpp | 10 ++++++++-- src/libs/utils/navigationtreeview.h | 1 + src/plugins/classview/classviewnavigationwidget.cpp | 1 - src/plugins/projectexplorer/projecttreewidget.cpp | 1 - 4 files changed, 9 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/libs/utils/navigationtreeview.cpp b/src/libs/utils/navigationtreeview.cpp index 042624db3d..0c1dd193a9 100644 --- a/src/libs/utils/navigationtreeview.cpp +++ b/src/libs/utils/navigationtreeview.cpp @@ -61,8 +61,8 @@ NavigationTreeView::NavigationTreeView(QWidget *parent) setAttribute(Qt::WA_MacShowFocusRect, false); setHeaderHidden(true); - - // show horizontal scrollbar + // We let the column adjust to contents, but note + // the setting of a minimum size in resizeEvent() header()->setResizeMode(QHeaderView::ResizeToContents); header()->setStretchLastSection(false); } @@ -82,6 +82,12 @@ void NavigationTreeView::focusOutEvent(QFocusEvent *event) QTreeView::focusOutEvent(event); } +void NavigationTreeView::resizeEvent(QResizeEvent *event) +{ + header()->setMinimumSectionSize(viewport()->width()); + QTreeView::resizeEvent(event); +} + #ifdef Q_WS_MAC void NavigationTreeView::keyPressEvent(QKeyEvent *event) { diff --git a/src/libs/utils/navigationtreeview.h b/src/libs/utils/navigationtreeview.h index 2797e8aa35..ca89d9b053 100644 --- a/src/libs/utils/navigationtreeview.h +++ b/src/libs/utils/navigationtreeview.h @@ -49,6 +49,7 @@ public: protected: void focusInEvent(QFocusEvent *event); void focusOutEvent(QFocusEvent *event); + void resizeEvent(QResizeEvent *event); #ifdef Q_WS_MAC void keyPressEvent(QKeyEvent *event); diff --git a/src/plugins/classview/classviewnavigationwidget.cpp b/src/plugins/classview/classviewnavigationwidget.cpp index 82a9c4a8e3..4523fe3760 100644 --- a/src/plugins/classview/classviewnavigationwidget.cpp +++ b/src/plugins/classview/classviewnavigationwidget.cpp @@ -83,7 +83,6 @@ NavigationWidget::NavigationWidget(QWidget *parent) : // tree model d_ptr->treeModel = new TreeItemModel(this); - d_ptr->ui->treeView->header()->setStretchLastSection(true); d_ptr->ui->treeView->setModel(d_ptr->treeModel); // connect signal/slots diff --git a/src/plugins/projectexplorer/projecttreewidget.cpp b/src/plugins/projectexplorer/projecttreewidget.cpp index 7053046477..43206cddd5 100644 --- a/src/plugins/projectexplorer/projecttreewidget.cpp +++ b/src/plugins/projectexplorer/projecttreewidget.cpp @@ -116,7 +116,6 @@ ProjectTreeWidget::ProjectTreeWidget(QWidget *parent) this, SLOT(filesAboutToBeRemoved(FolderNode *, const QList &))); m_view = new ProjectTreeView; - m_view->header()->setStretchLastSection(true); m_view->setModel(m_model); setFocusProxy(m_view); initView(); -- cgit v1.2.1