From 38987609c5acd7e47c45ee4b856e233ded17612c Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 11 Feb 2017 07:27:15 +0100 Subject: Read and write search settings Yay! Still does nothing! --- searchwidget.cpp | 42 +++++++++++++++++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 5 deletions(-) (limited to 'searchwidget.cpp') diff --git a/searchwidget.cpp b/searchwidget.cpp index 5d945e1..9d364cf 100644 --- a/searchwidget.cpp +++ b/searchwidget.cpp @@ -8,6 +8,8 @@ #include #include #include +#include +#include #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()); +} -- cgit v1.2.3-70-g09d2