diff options
author | Arno <arno@disconnect.de> | 2017-02-11 07:27:15 +0100 |
---|---|---|
committer | Arno <arno@disconnect.de> | 2017-02-11 07:27:15 +0100 |
commit | 38987609c5acd7e47c45ee4b856e233ded17612c (patch) | |
tree | 6ddc46edb7fd329850db8886e15215a021e08b8f | |
parent | 274e54474010876cb7753924c4116360aa73b906 (diff) | |
download | ShemovCleaner-38987609c5acd7e47c45ee4b856e233ded17612c.tar.gz ShemovCleaner-38987609c5acd7e47c45ee4b856e233ded17612c.tar.bz2 ShemovCleaner-38987609c5acd7e47c45ee4b856e233ded17612c.zip |
Read and write search settings
Yay! Still does nothing!
-rw-r--r-- | searchwidget.cpp | 42 | ||||
-rw-r--r-- | searchwidget.h | 6 | ||||
-rw-r--r-- | shemovcleaner.cpp | 1 |
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")); |