diff options
author | vng <viktor.govako@gmail.com> | 2012-11-23 19:17:33 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 01:47:08 +0300 |
commit | 614e13677e89d05ffecc3dd29ff4de95a0f64196 (patch) | |
tree | 488c688561eb7bb99ffa4d66bd7e744aa1215d5d /search | |
parent | a8f49d2d392df5e26d1f7d3c20171fafac4e7fba (diff) |
Do additional search according to search mode.
Diffstat (limited to 'search')
-rw-r--r-- | search/search_engine.cpp | 4 | ||||
-rw-r--r-- | search/search_query.cpp | 7 | ||||
-rw-r--r-- | search/search_query.hpp | 2 |
3 files changed, 8 insertions, 5 deletions
diff --git a/search/search_engine.cpp b/search/search_engine.cpp index 07a4358438..ea110df8e7 100644 --- a/search/search_engine.cpp +++ b/search/search_engine.cpp @@ -293,7 +293,9 @@ void Engine::SearchAsync() { try { - m_pQuery->SearchAdditional(res); + m_pQuery->SearchAdditional(res, + params.NeedSearch(SearchParams::AROUND_POSITION), + params.NeedSearch(SearchParams::IN_VIEWPORT)); } catch (Query::CancelException const &) { diff --git a/search/search_query.cpp b/search/search_query.cpp index f6601b1118..c79ba0f6c3 100644 --- a/search/search_query.cpp +++ b/search/search_query.cpp @@ -1623,18 +1623,19 @@ void Query::SearchAllInViewport(m2::RectD const & viewport, Results & res, unsig } } -void Query::SearchAdditional(Results & res) +void Query::SearchAdditional(Results & res, bool nearMe, bool inViewport) { ClearQueues(); string name[2]; // search in mwm with position ... - if (m_position.x > empty_pos_value && m_position.y > empty_pos_value) + if (nearMe && m_position.x > empty_pos_value && m_position.y > empty_pos_value) name[0] = m_pInfoGetter->GetRegionFile(m_position); // ... and in mwm with viewport - name[1] = m_pInfoGetter->GetRegionFile(GetViewport().Center()); + if (inViewport) + name[1] = m_pInfoGetter->GetRegionFile(GetViewport().Center()); LOG(LDEBUG, ("Additional MWM search: ", name[0], name[1])); diff --git a/search/search_query.hpp b/search/search_query.hpp index 854f9fccc7..5b1d9d0925 100644 --- a/search/search_query.hpp +++ b/search/search_query.hpp @@ -85,7 +85,7 @@ public: void SearchCoordinates(string const & query, Results & res) const; void Search(Results & res); void SearchAllInViewport(m2::RectD const & viewport, Results & res, unsigned int resultsNeeded = 30); - void SearchAdditional(Results & res); + void SearchAdditional(Results & res, bool nearMe, bool inViewport); //@} void ClearCaches(); |