public void TestDefaultCtor() { // set up var track = UnitTestHelper.GetDefaultTrack(); var page = new AddTrackPopupPage(track); // check Assert.IsNotNull(page.Content, "page content must have been set"); }
/// <summary> /// Imports a single track and adds it to the map /// </summary> /// <param name="geoDataFile">geo data file to import track from</param> /// <param name="trackIndex">track index</param> /// <returns>true when loading track was successful, false when not</returns> private static async Task <bool> ImportTrackAsync(IGeoDataFile geoDataFile, int trackIndex) { var track = geoDataFile.LoadTrack(trackIndex); if (track == null) { return(false); } track.Description = HtmlConverter.Sanitize(track.Description); track.CalculateStatistics(); await CloseWaitingPopupPageAsync(); track = await AddTrackPopupPage.ShowAsync(track); if (track == null) { return(false); // user canceled editing track properties } // sample track heights only when it's a flight; non-flight tracks are draped onto // the ground if (track.IsFlightTrack) { await AdjustTrackHeightsAsync(track); } var dataService = DependencyService.Get <IDataService>(); var trackDataService = dataService.GetTrackDataService(); await trackDataService.Add(track); if (track.IsLiveTrack) { var liveWaypointRefreshService = DependencyService.Get <LiveDataRefreshService>(); liveWaypointRefreshService.AddLiveTrack(track); } await App.AddTrack(track); App.MapView.ZoomToTrack(track); App.ShowToast("Track was loaded."); return(true); }
/// <summary> /// Imports a single track and adds it to the map /// </summary> /// <param name="geoDataFile">geo data file to import track from</param> /// <param name="trackIndex">track index</param> /// <returns>true when loading track was successful, false when not</returns> private static async Task <bool> ImportTrackAsync(IGeoDataFile geoDataFile, int trackIndex) { var track = geoDataFile.LoadTrack(trackIndex); if (track == null) { return(false); } track.CalculateStatistics(); await CloseWaitingPopupPageAsync(); track = await AddTrackPopupPage.ShowAsync(track); if (track == null) { return(false); // user canceled editing track properties } // sample track heights only when it's a flight; non-flight tracks are draped onto // the ground if (track.IsFlightTrack) { await SampleTrackHeightsAsync(track); } var dataService = DependencyService.Get <IDataService>(); var currentList = await dataService.GetTrackListAsync(CancellationToken.None); currentList.Add(track); await dataService.StoreTrackListAsync(currentList); App.AddMapTrack(track); App.ZoomToTrack(track); App.ShowToast("Track was loaded."); return(true); }