diff options
Diffstat (limited to 'src/frontend/searchdialog/btsearchoptionsarea.cpp')
-rw-r--r-- | src/frontend/searchdialog/btsearchoptionsarea.cpp | 58 |
1 files changed, 28 insertions, 30 deletions
diff --git a/src/frontend/searchdialog/btsearchoptionsarea.cpp b/src/frontend/searchdialog/btsearchoptionsarea.cpp index 902666b..d850344 100644 --- a/src/frontend/searchdialog/btsearchoptionsarea.cpp +++ b/src/frontend/searchdialog/btsearchoptionsarea.cpp @@ -2,7 +2,7 @@ * * This file is part of BibleTime's source code, http://www.bibletime.info/. * -* Copyright 1999-2011 by the BibleTime developers. +* Copyright 1999-2014 by the BibleTime developers. * The BibleTime source code is licensed under the GNU General Public License version 2.0. * **********/ @@ -16,20 +16,25 @@ #include <QHBoxLayout> #include <QLabel> #include <QLineEdit> -#include <QMessageBox> #include <QPushButton> #include <QRadioButton> #include "backend/bookshelfmodel/btbookshelftreemodel.h" -#include "backend/config/cbtconfig.h" +#include "backend/config/btconfig.h" +#include "backend/managers/cswordbackend.h" #include "backend/drivers/cswordmoduleinfo.h" +#include "bibletimeapp.h" #include "frontend/searchdialog/btsearchmodulechooserdialog.h" #include "frontend/searchdialog/btsearchsyntaxhelpdialog.h" #include "frontend/searchdialog/crangechooserdialog.h" #include "util/cresmgr.h" +#include "util/geticon.h" #include "util/tool.h" -#include "util/directory.h" +namespace { +const QString SearchTypeKey = "GUI/SearchDialog/searchType"; +} // anonymous namespace + namespace Search { BtSearchOptionsArea::BtSearchOptionsArea(QWidget *parent ) @@ -57,10 +62,6 @@ BtSearchOptionsArea::SearchType BtSearchOptionsArea::searchType() { return BtSearchOptionsArea::FullType; } -QPushButton* BtSearchOptionsArea::searchButton() const { - return m_searchButton; -} - void BtSearchOptionsArea::setSearchText(const QString& text) { bool found = false; int i = 0; @@ -82,8 +83,6 @@ void BtSearchOptionsArea::setSearchText(const QString& text) { } void BtSearchOptionsArea::initView() { - namespace DU = util::directory; - QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); this->setSizePolicy(sizePolicy); hboxLayout = new QHBoxLayout(this); @@ -103,17 +102,17 @@ void BtSearchOptionsArea::initView() { m_searchButton = new QPushButton(this); m_searchButton->setText(tr("&Search")); - m_searchButton->setIcon(DU::getIcon(CResMgr::searchdialog::icon)); + m_searchButton->setIcon(util::getIcon(CResMgr::searchdialog::icon)); m_searchButton->setToolTip(tr("Start to search the text in the chosen works")); gridLayout->addWidget(m_searchButton, 0, 2); m_chooseModulesButton = new QPushButton(tr("Ch&oose..."), searchGroupBox); - m_chooseModulesButton->setIcon(DU::getIcon(CResMgr::searchdialog::chooseworks_icon)); + m_chooseModulesButton->setIcon(util::getIcon(CResMgr::searchdialog::chooseworks_icon)); m_chooseModulesButton->setToolTip( tr("Choose works for the search")); gridLayout->addWidget(m_chooseModulesButton, 2, 2); m_chooseRangeButton = new QPushButton(tr("S&etup..."), searchGroupBox); - m_chooseRangeButton->setIcon(DU::getIcon(CResMgr::searchdialog::setupscope_icon)); + m_chooseRangeButton->setIcon(util::getIcon(CResMgr::searchdialog::setupscope_icon)); m_chooseRangeButton->setToolTip(tr("Configure predefined scopes for search")); gridLayout->addWidget(m_chooseRangeButton, 3, 2); @@ -243,7 +242,7 @@ void BtSearchOptionsArea::setModules(const QList<const CSwordModuleInfo*> &modul for (int i = 0; i < m_modulesCombo->count(); ++i) { historyList.append(m_modulesCombo->itemText(i)); } - CBTConfig::set(CBTConfig::searchModulesHistory, historyList); + btConfig().setValue("history/searchModuleHistory", historyList); emit sigSetSearchButtonStatus(!modules.isEmpty()); } @@ -284,7 +283,7 @@ void BtSearchOptionsArea::reset() { } void BtSearchOptionsArea::saveSettings() { - CBTConfig::set(CBTConfig::searchTexts, m_searchTextCombo->historyItems()); + btConfig().setValue("properties/searchTexts", m_searchTextCombo->historyItems()); SearchType t = FullType; if (m_typeAndButton->isChecked()) { t = AndType; @@ -292,25 +291,25 @@ void BtSearchOptionsArea::saveSettings() { if (m_typeOrButton->isChecked()) { t = OrType; } - CBTConfig::set(CBTConfig::searchType, t); + btConfig().setValue(SearchTypeKey, t); } void BtSearchOptionsArea::readSettings() { - QStringList texts = CBTConfig::get(CBTConfig::searchTexts); + const QStringList texts = btConfig().value<QStringList>("properties/searchTexts", QStringList()); //for some reason the slot was called when setting the upmost item disconnect(m_searchTextCombo, SIGNAL(editTextChanged(const QString&)), this, SLOT(slotValidateText(const QString&))); - for (int i = 0; i < texts.size(); i++) { - if (texts.at(i).size() > 0) - m_searchTextCombo->addItem(texts.at(i)); + Q_FOREACH (const QString & text, texts) { + if (text.size() > 0) + m_searchTextCombo->addItem(text); } connect(m_searchTextCombo, SIGNAL(editTextChanged(const QString&)), this, SLOT(slotValidateText(const QString&))); - m_modulesCombo->insertItems(0, CBTConfig::get(CBTConfig::searchModulesHistory)); + m_modulesCombo->insertItems(0, btConfig().value<QStringList>("history/searchModuleHistory", QStringList())); for (int i = 0; i < m_modulesCombo->count(); ++i) { m_modulesCombo->setItemData(i, m_modulesCombo->itemText(i), Qt::ToolTipRole); } - int stype = CBTConfig::get(CBTConfig::searchType); + int stype = btConfig().value<int>(SearchTypeKey, AndType); switch (stype) { case AndType: m_typeAndButton->setChecked(true); @@ -336,8 +335,8 @@ void BtSearchOptionsArea::setupRanges() { } void BtSearchOptionsArea::syntaxHelp() { - // The dialog is deleted on close: - BtSearchSyntaxHelpDialog *dlg = new BtSearchSyntaxHelpDialog(this); + BtSearchSyntaxHelpDialog * dlg = new BtSearchSyntaxHelpDialog(this); + dlg->setAttribute(Qt::WA_DeleteOnClose); dlg->show(); } @@ -349,23 +348,22 @@ void BtSearchOptionsArea::refreshRanges() { //m_rangeChooserCombo->insertItem(tr("Last search result")); //insert the user-defined ranges - m_rangeChooserCombo->insertItems(1, CBTConfig::get(CBTConfig::searchScopes).keys()); - + m_rangeChooserCombo->insertItems(1, btConfig().getSearchScopesForCurrentLocale().keys()); } sword::ListKey BtSearchOptionsArea::searchScope() { if (m_rangeChooserCombo->currentIndex() > 0) { //is not "no scope" - CBTConfig::StringMap map = CBTConfig::get(CBTConfig::searchScopes); + BtConfig::StringMap map = btConfig().getSearchScopesForCurrentLocale(); QString scope = map[ m_rangeChooserCombo->currentText() ]; if (!scope.isEmpty()) { - return sword::VerseKey().ParseVerseList( (const char*)scope.toUtf8(), "Genesis 1:1", true); + return sword::VerseKey().parseVerseList( (const char*)scope.toUtf8(), "Genesis 1:1", true); } } return sword::ListKey(); } bool BtSearchOptionsArea::hasSearchScope() { - return (searchScope().Count() > 0); + return (searchScope().getCount() > 0); } void BtSearchOptionsArea::addToHistory(const QString& text) { @@ -419,7 +417,7 @@ void BtSearchOptionsArea::slotValidateText(const QString& /*newText*/) { } // namespace Search QDataStream &operator<<(QDataStream &out, const Search::BtSearchOptionsArea::SearchType &searchType) { - out << (qint8) searchType; + out << static_cast<qint8>(searchType); return out; } |