From 59b26555c575676303660f4d967fb001273cc240 Mon Sep 17 00:00:00 2001 From: Arno Date: Fri, 19 Jan 2018 11:26:26 +0100 Subject: Remember last MIME-Filter --- filewidget.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/filewidget.cpp b/filewidget.cpp index 737b107..decedd9 100644 --- a/filewidget.cpp +++ b/filewidget.cpp @@ -85,6 +85,7 @@ void FileWidget::setupGui(){ mMimeFilters = new QComboBox; populateMimeFilters(); connect(mMimeFilters, QOverload::of(&QComboBox::activated), [this](const QString &text) { filter(MimeColumn, text); }); + connect(mMimeFilters, &QComboBox::currentTextChanged, [this](const QString &text) { filter(MimeColumn, text); }); QGridLayout *topL = new QGridLayout; topL->addWidget(new QLabel(tr("Directory")), 0, 0); @@ -139,6 +140,10 @@ void FileWidget::setupGui(){ mMimeData = new QMimeData; mFileView->setFocus(); mCopyProgress->setVisible(false); + + QSettings s; + QString startMimeFilter = s.value("currentmimefilter").toString(); + mMimeFilters->setCurrentText(startMimeFilter); } void FileWidget::createActions(){ @@ -386,6 +391,7 @@ void FileWidget::readSettings(){ void FileWidget::writeSettings(){ QSettings s; s.setValue("video/searchdir", mDir->text()); + s.setValue("currentmimefilter", mMimeFilters->currentText()); } void FileWidget::readCache(){ @@ -480,11 +486,18 @@ void FileWidget::populateFavDirs(){ void FileWidget::populateMimeFilters(){ QSettings s; + QString current = mMimeFilters->currentText(); QStringList mimeFilters = s.value("mimefilters").toStringList(); mimeFilters.sort(); mimeFilters.prepend(tr("")); mMimeFilters->clear(); mMimeFilters->addItems(mimeFilters); + int cbidx = mMimeFilters->findText(current); + if(cbidx > -1){ + mMimeFilters->blockSignals(true); + mMimeFilters->setCurrentIndex(cbidx); + mMimeFilters->blockSignals(false); + } } QList FileWidget::constructRow(CachedFileData *fd) const{ -- cgit v1.2.3-70-g09d2