| 492 | SearchMarks::SearchMarks() : m_bmManager(nullptr) {} |
| 493 | |
| 494 | void SearchMarks::SetDrapeEngine(ref_ptr<df::DrapeEngine> engine) |
| 495 | { |
| 496 | m_drapeEngine.Set(engine); |
| 497 | if (engine == nullptr) |
| 498 | return; |
| 499 | |
| 500 | std::vector<std::string> symbols; |
| 501 | for (uint8_t t = 0; t < SearchMarkType::Count; ++t) |
| 502 | symbols.push_back(GetSymbol(static_cast<SearchMarkType>(t))); |
| 503 | |
| 504 | base::SortUnique(symbols); |
| 505 | |
| 506 | m_drapeEngine.SafeCall(&df::DrapeEngine::RequestSymbolsSize, symbols, |
| 507 | [this](std::map<std::string, m2::PointF> && sizes) |
| 508 | { |
| 509 | GetPlatform().RunTask(Platform::Thread::Gui, [this, sizes = std::move(sizes)]() mutable |
| 510 | { |
| 511 | s_markSizes = std::move(sizes); |
| 512 | UpdateMaxDimension(); |
| 513 | }); |
| 514 | }); |
| 515 | } |
| 516 | |
| 517 | void SearchMarks::SetBookmarkManager(BookmarkManager * bmManager) |
| 518 | { |
no test coverage detected