diff options
| author | Peter Penz <[email protected]> | 2009-11-24 07:15:24 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2009-11-24 07:15:24 +0000 |
| commit | 7662e0e4d4053d223ad45cf28eea7697dde4f2f4 (patch) | |
| tree | 15df3f0c203c00ea7b2308751d110ba250852ebc /src/search | |
| parent | 61813e0df76f050dfa8de8e3f2220566b4013dec (diff) | |
Prepare the search criterion selector to use the new Nepomuk::Query::Term instead of a QString. The implementation still needs to be adapted, but this will be straight forward.
svn path=/trunk/KDE/kdebase/apps/; revision=1053447
Diffstat (limited to 'src/search')
| -rw-r--r-- | src/search/dolphinsearchoptionsconfigurator.cpp | 24 | ||||
| -rw-r--r-- | src/search/searchcriterionselector.cpp | 22 | ||||
| -rw-r--r-- | src/search/searchcriterionselector.h | 9 |
3 files changed, 37 insertions, 18 deletions
diff --git a/src/search/dolphinsearchoptionsconfigurator.cpp b/src/search/dolphinsearchoptionsconfigurator.cpp index 1ac9b40b1..c1ebd571c 100644 --- a/src/search/dolphinsearchoptionsconfigurator.cpp +++ b/src/search/dolphinsearchoptionsconfigurator.cpp @@ -22,6 +22,10 @@ #include "dolphin_searchsettings.h" #include "searchcriterionselector.h" +#include <nepomuk/andterm.h> +#include <nepomuk/query.h> +#include <nepomuk/term.h> + #include <kcombobox.h> #include <kdialog.h> #include <kicon.h> @@ -173,17 +177,19 @@ DolphinSearchOptionsConfigurator::~DolphinSearchOptionsConfigurator() KUrl DolphinSearchOptionsConfigurator::nepomukUrl() const { - QString searchOptions; + Nepomuk::Query::AndTerm andTerm; foreach (const SearchCriterionSelector* criterion, m_criterions) { - const QString criterionString = criterion->toString(); - if (!criterionString.isEmpty()) { - if (!searchOptions.isEmpty()) { - searchOptions += ' '; - } - searchOptions += criterionString; - } + const Nepomuk::Query::Term term = criterion->queryTerm(); + andTerm.addSubTerm(term); } + // TODO: respect m_customSearchQuery + + Nepomuk::Query::Query query; + query.setTerm(andTerm); + return query.toSearchUrl(); + + /*QString searchOptions; QString searchString = m_customSearchQuery; if (!searchString.isEmpty() && !searchOptions.isEmpty()) { searchString += ' ' + searchOptions; @@ -192,7 +198,7 @@ KUrl DolphinSearchOptionsConfigurator::nepomukUrl() const } searchString.insert(0, QLatin1String("nepomuksearch:/")); - return KUrl(searchString); + return KUrl(searchString);*/ } void DolphinSearchOptionsConfigurator::setCustomSearchQuery(const QString& searchQuery) diff --git a/src/search/searchcriterionselector.cpp b/src/search/searchcriterionselector.cpp index cf2cc2704..7917d1b8f 100644 --- a/src/search/searchcriterionselector.cpp +++ b/src/search/searchcriterionselector.cpp @@ -20,8 +20,16 @@ #include "searchcriterionselector.h" +#define DISABLE_NEPOMUK_LEGACY +#include <nepomuk/comparisonterm.h> +#include <nepomuk/nie.h> +#include <nepomuk/literalterm.h> +#include <nepomuk/query.h> + #include "searchcriterionvalue.h" +#include <Soprano/LiteralValue> + #include <QComboBox> #include <QHBoxLayout> #include <QList> @@ -74,10 +82,10 @@ SearchCriterionSelector::~SearchCriterionSelector() { } -QString SearchCriterionSelector::toString() const +Nepomuk::Query::Term SearchCriterionSelector::queryTerm() const { if (m_valueWidget == 0) { - return QString(); + return Nepomuk::Query::Term(); } const int descIndex = m_descriptionsBox->currentIndex(); @@ -86,9 +94,15 @@ QString SearchCriterionSelector::toString() const const int compIndex = m_comparatorBox->currentIndex(); const SearchCriterionDescription::Comparator& comp = descr.comparators()[compIndex]; if (comp.operation.isEmpty()) { - return QString(); + return Nepomuk::Query::Term(); } + Nepomuk::Query::LiteralTerm literalTerm(Soprano::LiteralValue("dummy")); + Nepomuk::Query::ComparisonTerm term(Nepomuk::Vocabulary::NIE::lastModified(), + literalTerm, + Nepomuk::Query::ComparisonTerm::Smaller); + return term; +/* QString criterion = comp.prefix + descr.identifier() + comp.operation; if (!m_valueWidget->value().isEmpty()) { const QString value = m_valueWidget->value(); @@ -100,7 +114,7 @@ QString SearchCriterionSelector::toString() const criterion += value; } } - return criterion; + return criterion;*/ } SearchCriterionSelector::Type SearchCriterionSelector::type() const diff --git a/src/search/searchcriterionselector.h b/src/search/searchcriterionselector.h index f0eab1ac4..7b0bc018d 100644 --- a/src/search/searchcriterionselector.h +++ b/src/search/searchcriterionselector.h @@ -25,6 +25,8 @@ #include <QString> #include <QWidget> +#define DISABLE_NEPOMUK_LEGACY +#include <nepomuk/term.h> #include <search/searchcriteriondescription.h> class SearchCriterionValue; @@ -50,11 +52,8 @@ public: SearchCriterionSelector(Type type, QWidget* parent = 0); virtual ~SearchCriterionSelector(); - /** - * Converts the string representation of the criterion. - * The string is conform to get added to a nepomuk:/-URI. - */ - QString toString() const; + /** Returns the query-term for the criterion. */ + Nepomuk::Query::Term queryTerm() const; Type type() const; |
