summaryrefslogtreecommitdiffstats
path: root/filewidget.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2018-01-04 08:34:59 +0100
committerArno <arno@disconnect.de>2018-01-04 08:34:59 +0100
commit1c6d0cbc4e561275197fc78b3fa9f29406f4ced8 (patch)
tree1c13be604463eaf4c0d9a5f0e65fa6f943cedb63 /filewidget.cpp
parent3c648fed56a6c7a9f40353d95f4eff5baaecaf76 (diff)
downloadShemovCleaner-1c6d0cbc4e561275197fc78b3fa9f29406f4ced8.tar.gz
ShemovCleaner-1c6d0cbc4e561275197fc78b3fa9f29406f4ced8.tar.bz2
ShemovCleaner-1c6d0cbc4e561275197fc78b3fa9f29406f4ced8.zip
Implement favorite dirs
Diffstat (limited to 'filewidget.cpp')
-rw-r--r--filewidget.cpp21
1 files changed, 20 insertions, 1 deletions
diff --git a/filewidget.cpp b/filewidget.cpp
index a60f48b..e3759ff 100644
--- a/filewidget.cpp
+++ b/filewidget.cpp
@@ -31,6 +31,7 @@
#include <QApplication>
#include <QContextMenuEvent>
#include <QDirIterator>
+#include <QComboBox>
#include "filewidget.h"
#include "filesorter.h"
@@ -73,6 +74,9 @@ void FileWidget::setupGui(){
connect(mDir, &QLineEdit::returnPressed, this, &FileWidget::gatherData);
QPushButton *selDirBtn = new QPushButton(tr("&Browse..."));
connect(selDirBtn, &QPushButton::clicked, this, &FileWidget::selectDir);
+ mFavDirs = new QComboBox;
+ populateFavDirs();
+ connect(mFavDirs, QOverload<const QString &>::of(&QComboBox::activated), [=](const QString &text) { cdAbsolute(text); });
mFilter = new QLineEdit;
connect(mFilter, &QLineEdit::returnPressed, this, &FileWidget::filter);
@@ -83,8 +87,9 @@ void FileWidget::setupGui(){
topL->addWidget(new QLabel(tr("Directory")), 0, 0);
topL->addWidget(mDir, 0, 1);
topL->addWidget(selDirBtn, 0, 2);
+ topL->addWidget(mFavDirs, 0, 3);
topL->addWidget(new QLabel(tr("Filter")), 1, 0);
- topL->addWidget(mFilter, 1, 1);
+ topL->addWidget(mFilter, 1, 1, 2, 1);
topL->addWidget(searchBtn, 1, 2);
mFileView = new QTreeView;
@@ -448,6 +453,13 @@ void FileWidget::cutOrCopy(){
clip->setMimeData(mMimeData);
}
+void FileWidget::populateFavDirs(){
+ QSettings s;
+ QStringList favDirs = s.value("favdirs").toStringList();
+ mFavDirs->clear();
+ mFavDirs->addItems(favDirs);
+}
+
QList<QStandardItem*> FileWidget::constructRow(CachedFileData *fd) const{
QList<QStandardItem*> fData;
QBrush redBrush(Qt::red);
@@ -746,6 +758,13 @@ void FileWidget::cd(const QString &to){
}
}
+void FileWidget::cdAbsolute(const QString &to){
+ QString ld = mDir->text();
+ mLastDir = ld;
+ mDir->setText(QDir::toNativeSeparators(to));
+ gatherData();
+}
+
void FileWidget::cdUp(){
cd("..");
}