summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2017-02-11 07:27:15 +0100
committerArno <arno@disconnect.de>2017-02-11 07:27:15 +0100
commit38987609c5acd7e47c45ee4b856e233ded17612c (patch)
tree6ddc46edb7fd329850db8886e15215a021e08b8f
parent274e54474010876cb7753924c4116360aa73b906 (diff)
downloadShemovCleaner-38987609c5acd7e47c45ee4b856e233ded17612c.tar.gz
ShemovCleaner-38987609c5acd7e47c45ee4b856e233ded17612c.tar.bz2
ShemovCleaner-38987609c5acd7e47c45ee4b856e233ded17612c.zip
Read and write search settings
Yay! Still does nothing!
-rw-r--r--searchwidget.cpp42
-rw-r--r--searchwidget.h6
-rw-r--r--shemovcleaner.cpp1
3 files changed, 43 insertions, 6 deletions
diff --git a/searchwidget.cpp b/searchwidget.cpp
index 5d945e1..9d364cf 100644
--- a/searchwidget.cpp
+++ b/searchwidget.cpp
@@ -8,6 +8,8 @@
#include <QSortFilterProxyModel>
#include <QToolBar>
#include <QMenuBar>
+#include <QSettings>
+#include <QHeaderView>
#include "searchwidget.h"
#include "globals.h"
@@ -16,6 +18,10 @@ SearchWidget::SearchWidget(QWidget *parent) : QWidget(parent) {
setupGui();
}
+SearchWidget::~SearchWidget(){
+ writeSettings();
+}
+
void SearchWidget::setupGui(){
mSearch = new QLineEdit;
connect(mSearch, SIGNAL(returnPressed()), this, SLOT(search()));
@@ -62,12 +68,12 @@ void SearchWidget::createActions(){
mToolBar->addAction(clearA);
mToolBar->addSeparator();
- QAction *isRegexA = new QAction(QIcon(":/curlybrackets.png"), tr("Regex"), this);
- isRegexA->setCheckable(true);
- connect(isRegexA, SIGNAL(toggled(bool)), this, SLOT(setRegex(bool)));
- editMenu->addAction(isRegexA);
+ mIsRegexA = new QAction(QIcon(":/curlybrackets.png"), tr("Regex"), this);
+ mIsRegexA->setCheckable(true);
+ connect(mIsRegexA, SIGNAL(toggled(bool)), this, SLOT(setRegex(bool)));
+ editMenu->addAction(mIsRegexA);
editMenu->addSeparator();
- mToolBar->addAction(isRegexA);
+ mToolBar->addAction(mIsRegexA);
mToolBar->addSeparator();
QActionGroup *searchModeAG = new QActionGroup(this);
@@ -128,3 +134,29 @@ QString SearchWidget::currentSearch(){
}
return tr("nothing!");
}
+
+void SearchWidget::readSettings(){
+ QSettings s;
+ mSearchMode = s.value("search/mode").toInt();
+ if(mSearchMode == File){
+ mSearchFileA->toggle();
+ }else if(mSearchMode == Origin){
+ mSearchOriginA->toggle();
+ }else if(mSearchMode == Title){
+ mSearchTitleA->toggle();
+ }else if(mSearchMode == Subtitle){
+ mSearchSubtitleA->toggle();
+ }
+ mIsRegex = s.value("search/regex").toBool();
+ mIsRegexA->setChecked(mIsRegex);
+ mSearch->setText(s.value("search/string").toString());
+ mResultView->header()->restoreState(s.value("search/header").toByteArray());
+}
+
+void SearchWidget::writeSettings(){
+ QSettings s;
+ s.setValue("search/mode", mSearchMode);
+ s.setValue("search/regex", mIsRegex);
+ s.setValue("search/string", mSearch->text());
+ s.setValue("search/header", mResultView->header()->saveState());
+}
diff --git a/searchwidget.h b/searchwidget.h
index 2e04af7..f82fd0f 100644
--- a/searchwidget.h
+++ b/searchwidget.h
@@ -15,8 +15,9 @@ class SearchWidget : public QWidget {
public:
enum { NumColumns = 5 };
enum Columns { IconColumn = 0, NameColumn = 1, SizeColumn = 2, BitrateColumn = 3, DurationColumn = 4 };
- enum SearchMode { File, Origin, Title, Subtitle };
+ enum SearchMode { File = 0, Origin = 1, Title = 2, Subtitle = 3 };
explicit SearchWidget(QWidget *parent = 0);
+ ~SearchWidget();
QMenuBar *menuBar() { return mMenuBar; }
QString currentSearch();
@@ -25,6 +26,8 @@ class SearchWidget : public QWidget {
void search();
void setRegex(bool toggled);
void setSearchMode(QAction *action);
+ void readSettings();
+ void writeSettings();
private:
void setupGui();
@@ -39,6 +42,7 @@ class SearchWidget : public QWidget {
QAction *mSearchOriginA;
QAction *mSearchTitleA;
QAction *mSearchSubtitleA;
+ QAction *mIsRegexA;
int mSearchMode;
bool mIsRegex;
};
diff --git a/shemovcleaner.cpp b/shemovcleaner.cpp
index 1b2e5cf..18e1428 100644
--- a/shemovcleaner.cpp
+++ b/shemovcleaner.cpp
@@ -50,6 +50,7 @@ ShemovCleaner::ShemovCleaner(QWidget *parent, Qt::WindowFlags f) : QMainWindow(p
mActorTab->readSettings();
qApp->processEvents();
mSearchTab = new SearchWidget;
+ mSearchTab->readSettings();
mTab->addTab(mTorrentTab, tr("&Torrents"));
mTab->addTab(mFileTab, tr("Fi&les"));