[UI] little cleanup on search filter use

This commit is contained in:
emeric
2015-07-27 23:56:35 +02:00
parent 185b4b36c7
commit 9ab2fbc68a
+15 -37
View File
@@ -97,32 +97,16 @@ Audio::Audio(Wt::WContainerWidget *parent)
std::vector<std::string> keywords; std::vector<std::string> keywords;
boost::algorithm::split(keywords, text, boost::is_any_of(" "), boost::token_compress_on); boost::algorithm::split(keywords, text, boost::is_any_of(" "), boost::token_compress_on);
{ releaseSearch->search(SearchFilter::NameLikeMatch( {
SearchFilter filter; { SearchFilter::Field::Artist, keywords },
for (std::string keyword : keywords) { SearchFilter::Field::Release, keywords }}),
{ 3);
filter.nameLikeMatch[SearchFilter::Field::Artist].push_back(keyword);
filter.nameLikeMatch[SearchFilter::Field::Release].push_back(keyword);
}
releaseSearch->search(filter, 3); artistSearch->search(SearchFilter::NameLikeMatch({{SearchFilter::Field::Artist, keywords}}),
} 3);
{ trackSearch->search(SearchFilter::NameLikeMatch({{SearchFilter::Field::Track, keywords}}),
SearchFilter filter; 3);
for (std::string keyword : keywords)
filter.nameLikeMatch[SearchFilter::Field::Artist].push_back(keyword);
artistSearch->search(filter, 3);
}
{
SearchFilter filter;
BOOST_FOREACH(std::string keyword, keywords)
filter.nameLikeMatch[SearchFilter::Field::Track].push_back(keyword);
trackSearch->search(filter, 3);
}
artistSearch->show(); artistSearch->show();
releaseSearch->show(); releaseSearch->show();
@@ -143,10 +127,8 @@ Audio::Audio(Wt::WContainerWidget *parent)
trackSearch->hide(); trackSearch->hide();
releaseSearch->show(); releaseSearch->show();
SearchFilter filter; releaseSearch->search(SearchFilter::IdMatch({{SearchFilter::Field::Artist, {artistId}}}),
filter.idMatch[SearchFilter::Field::Artist].push_back(artistId); 20);
releaseSearch->search(filter, 20);
}, std::placeholders::_1)); }, std::placeholders::_1));
releaseSearch->moreReleasesSelected().connect(std::bind([=] releaseSearch->moreReleasesSelected().connect(std::bind([=]
@@ -162,11 +144,8 @@ Audio::Audio(Wt::WContainerWidget *parent)
releaseSearch->hide(); releaseSearch->hide();
trackSearch->show(); trackSearch->show();
// TODO load track search with selected release trackSearch->search(SearchFilter::IdMatch({{SearchFilter::Field::Release, {releaseId}}}),
SearchFilter filter; 20);
filter.idMatch[SearchFilter::Field::Release].push_back(releaseId);
trackSearch->search(filter, 20);
}, std::placeholders::_1)); }, std::placeholders::_1));
trackSearch->moreTracksSelected().connect(std::bind([=] trackSearch->moreTracksSelected().connect(std::bind([=]
@@ -207,10 +186,9 @@ Audio::Audio(Wt::WContainerWidget *parent)
// Initially, populate the widgets using an empty search // Initially, populate the widgets using an empty search
{ {
SearchFilter filter; // empty filter artistSearch->search(SearchFilter(), 3);
artistSearch->search(filter, 3); releaseSearch->search(SearchFilter(), 3);
releaseSearch->search(filter, 3); trackSearch->search(SearchFilter(), 3);
trackSearch->search(filter, 3);
} }
} }