| 1171 | } |
| 1172 | |
| 1173 | kml::TrackId BookmarkManager::SaveRoute(std::vector<geometry::PointWithAltitude> points, std::string const & from, |
| 1174 | std::string const & to) |
| 1175 | { |
| 1176 | CHECK(!points.empty(), ("Route points should not be empty")); |
| 1177 | |
| 1178 | kml::TrackData trackData; |
| 1179 | trackData.m_geometry.m_lines.push_back(std::move(points)); |
| 1180 | trackData.m_geometry.m_timestamps.emplace_back(); |
| 1181 | |
| 1182 | kml::SetDefaultStr(trackData.m_name, GenerateSavedRouteName(from, to)); |
| 1183 | |
| 1184 | kml::ColorData colorData; |
| 1185 | colorData.m_rgba = GenerateTrackRecordingColor().GetRGBA(); |
| 1186 | kml::TrackLayer layer; |
| 1187 | layer.m_color = colorData; |
| 1188 | |
| 1189 | std::vector<kml::TrackLayer> layers; |
| 1190 | layers.emplace_back(layer); |
| 1191 | trackData.m_layers = std::move(layers); |
| 1192 | |
| 1193 | trackData.m_timestamp = kml::TimestampClock::now(); |
| 1194 | |
| 1195 | auto editSession = GetEditSession(); |
| 1196 | auto const track = editSession.CreateTrack(std::move(trackData)); |
| 1197 | auto const groupId = LastEditedBMCategory(); |
| 1198 | auto const trackId = track->GetId(); |
| 1199 | AttachTrack(trackId, groupId); |
| 1200 | return trackId; |
| 1201 | } |
| 1202 | |
| 1203 | void BookmarkManager::PrepareBookmarksAddresses(std::vector<SortBookmarkData> & bookmarksForSort, |
| 1204 | AddressesCollection & newAddresses) |
nothing calls this directly
no test coverage detected