| 607 | } |
| 608 | |
| 609 | void Framework::FillUserMarkInfo(UserMark const * mark, place_page::Info & outInfo) |
| 610 | { |
| 611 | outInfo.SetSelectedObject(df::SelectionShape::OBJECT_USER_MARK); |
| 612 | |
| 613 | switch (mark->GetMarkType()) |
| 614 | { |
| 615 | case UserMark::Type::API: FillApiMarkInfo(*static_cast<ApiMarkPoint const *>(mark), outInfo); break; |
| 616 | case UserMark::Type::BOOKMARK: FillBookmarkInfo(*static_cast<Bookmark const *>(mark), outInfo); break; |
| 617 | case UserMark::Type::SEARCH: FillSearchResultInfo(*static_cast<SearchMarkPoint const *>(mark), outInfo); break; |
| 618 | case UserMark::Type::ROUTING: FillRouteMarkInfo(*static_cast<RouteMarkPoint const *>(mark), outInfo); break; |
| 619 | case UserMark::Type::ROAD_WARNING: FillRoadTypeMarkInfo(*static_cast<RoadWarningMark const *>(mark), outInfo); break; |
| 620 | case UserMark::Type::TRACK_INFO: |
| 621 | { |
| 622 | auto const & infoMark = *static_cast<TrackInfoMark const *>(mark); |
| 623 | BuildTrackPlacePage(GetBookmarkManager().GetTrackSelectionInfo(infoMark.GetTrackId()), outInfo); |
| 624 | return; |
| 625 | } |
| 626 | case UserMark::Type::TRACK_SELECTION: |
| 627 | { |
| 628 | auto const & selMark = *static_cast<TrackSelectionMark const *>(mark); |
| 629 | BuildTrackPlacePage(GetBookmarkManager().GetTrackSelectionInfo(selMark.GetTrackId()), outInfo); |
| 630 | return; |
| 631 | } |
| 632 | case UserMark::Type::TRANSIT: |
| 633 | { |
| 634 | FillTransitMarkInfo(*static_cast<TransitMark const *>(mark), outInfo); |
| 635 | break; |
| 636 | } |
| 637 | case UserMark::Type::SPEED_CAM: |
| 638 | { |
| 639 | FillSpeedCameraMarkInfo(*static_cast<SpeedCameraMark const *>(mark), outInfo); |
| 640 | break; |
| 641 | } |
| 642 | |
| 643 | case UserMark::Type::TRAFFIC_LIGHT: |
| 644 | { |
| 645 | auto const * tlMark = static_cast<TrafficLightMark const *>(mark); |
| 646 | if (tlMark->GetFeatureID().IsValid()) |
| 647 | FillFeatureInfo(tlMark->GetFeatureID(), outInfo); |
| 648 | break; |
| 649 | } |
| 650 | |
| 651 | default: CHECK(false, ("Unexpected user mark type", mark->GetMarkType())); |
| 652 | } |
| 653 | |
| 654 | SetPlacePageLocation(outInfo); |
| 655 | } |
| 656 | |
| 657 | void Framework::FillBookmarkInfo(Bookmark const & bmk, place_page::Info & info) const |
| 658 | { |
nothing calls this directly
no test coverage detected