From 444876f36473d7e0d5577e519145193dd43ad1e4 Mon Sep 17 00:00:00 2001 From: Arno Date: Tue, 19 Dec 2017 08:19:06 +0100 Subject: Improve FileWidget Also keep sort order and column while gathering data. Disable sorting while populating the model. --- filewidget.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/filewidget.cpp b/filewidget.cpp index e192bf4..ba8f617 100644 --- a/filewidget.cpp +++ b/filewidget.cpp @@ -85,6 +85,7 @@ void FileWidget::setupGui(){ mFileView = new QTreeView; mFileView->setSortingEnabled(true); + mFileView->setUniformRowHeights(true); mFileView->setSelectionBehavior(QAbstractItemView::SelectRows); mFileView->setSelectionMode(QAbstractItemView::ExtendedSelection); connect(mFileView, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(properties(QModelIndex))); @@ -222,6 +223,9 @@ void FileWidget::selectDir(){ } void FileWidget::gatherData(){ + if(isVisible()){ + writeHeaderData(); + } QSettings s; QStringList copyDirs = s.value("copydirs").toStringList(); QStringList copyDirFiles; @@ -236,6 +240,7 @@ void FileWidget::gatherData(){ QDir d(mDir->text()); QFileInfoList fl = d.entryInfoList(QStringList() << "*", QDir::Files | QDir::Dirs | QDir::NoDot, QDir::Name | QDir::DirsFirst); + mFileView->setSortingEnabled(false); mModel->clear(); QStandardItem *root = mModel->invisibleRootItem(); mModel->setHorizontalHeaderLabels(QStringList() << QChar(0x26A7) << tr("Name") << QChar(0x26A5) << tr("MIME") << tr("Duration") << tr("Size") << tr("MD5")); @@ -343,6 +348,7 @@ void FileWidget::gatherData(){ ++count; mProgressBar->setValue(count); } + mFileView->setSortingEnabled(true); readHeaderData(); qApp->restoreOverrideCursor(); selectFirst(); -- cgit v1.2.3-70-g09d2