public static string GetOrCreateTempDirectory(TrekplannerConfiguration configuration) { var explicitTempFolder = configuration.Directories?.TempDownloadFolder; var folder = string.IsNullOrWhiteSpace(explicitTempFolder) ? Path.Combine(AppData, "downloads") : explicitTempFolder; if (!Directory.Exists(folder)) { Directory.CreateDirectory(folder); } return(folder); }
protected override void Load(ContainerBuilder builder) { //Load config builder.RegisterInstance(TrekplannerConfiguration.LoadOrCreate(true)).AsSelf().SingleInstance(); //Middleware builder.RegisterType <KmlLoaderMiddleware>().As <IGeoLoaderMiddleware>().SingleInstance(); builder.RegisterType <GpxLoaderMiddleware>().As <IGeoLoaderMiddleware>().SingleInstance(); builder.RegisterType <HtmlReportExporter>().As <ITrackReportExporter>().SingleInstance(); //Services builder.RegisterType <UiService>().As <IUiService>().AsSelf().SingleInstance(); builder.RegisterType <SrtmRepository>().AsSelf().SingleInstance(); builder.RegisterType <GeoLoaderService>().AsSelf().SingleInstance(); builder.RegisterType <HeightmapManagerVm>().AsSelf().SingleInstance(); builder.RegisterType <LocalizationManager>().AsSelf().SingleInstance(); builder.RegisterType <UiLoggingVm>().As <IUiLoggingService>().AsSelf().SingleInstance(); //Heightmap providers builder.RegisterType <SrtmFileDownloadHeightmapProvider>().AsSelf().As <IHeightmapProvider>().SingleInstance(); //Windows builder.RegisterType <HeightmapDownloaderWindow>().AsSelf().InstancePerDependency(); builder.RegisterType <MainWindow>().AsSelf().SingleInstance(); builder.RegisterType <ProgramSettingsWindow>().AsSelf().InstancePerDependency(); builder.RegisterType <ProgramSettingsVm>().AsSelf().InstancePerDependency(). UsingConstructor(new NotXamlConstructorSelector()); //Vms builder.RegisterType <TrackVm>().AsSelf().InstancePerDependency(); builder.RegisterType <TrackReportVm>().AsSelf().InstancePerDependency(); builder.RegisterType <TrackReportItemVm>().AsSelf().InstancePerDependency(); builder.RegisterType <TrackManagerVm>().AsSelf().SingleInstance(); builder.RegisterType <HeightmapDownloaderVm>().AsSelf(). InstancePerDependency(). UsingConstructor(new NotXamlConstructorSelector()); builder.RegisterType <MainSettingsVm>().AsSelf(). InstancePerDependency() .UsingConstructor(new NotXamlConstructorSelector()); }
public TrackReportVm(TrackVm source, IUiLoggingService loggingService, IUiService uiService, SrtmRepository srtmRepository, ITrackReportExporter[] reportExporters, Func <TrackVm, TrackReportItemVm> reportItemGenerator, TrekplannerConfiguration configuration) { _loggingService = loggingService; _uiService = uiService; _srtmRepository = srtmRepository; _reportExporters = reportExporters; _reportItemGenerator = reportItemGenerator; _configuration = configuration; Source = source; Totals = new TrackReportTotalsVm(this); Chart = new TrackChartVm(this); ExportCommand = new DelegateCommand(o => Results.Any(), ExportReportAsync); }
public MainSettingsVm(TrekplannerConfiguration configuration) { _configuration = configuration; }
public LocalizationManager(TrekplannerConfiguration configuration, IUiService uiService) { _configuration = configuration; _uiService = uiService; }