protected override async Task InitializeAsync() { Categories.Add(new CategoryHeaderSettingsViewModel("GENERAL")); Categories.Add(new InstallationSettingsViewModel(_controller)); var optionsCategories = _controller.GetDcsOptionCategories(); if (optionsCategories.Length > 0) { Categories.Add(new CategoryHeaderSettingsViewModel("DCS")); } foreach (var category in optionsCategories.OrderBy(c => c.DisplayOrder)) { Categories.Add(new DcsOptionCategoryViewModel(category.DisplayName.ToUpper(), category.Id, _controller)); } Categories.Add(new CategoryHeaderSettingsViewModel("VIEWPORTS")); Categories.Add(new ViewportSettingsViewModel(_controller)); var modules = await _controller.GetInstalledAircraftModulesAsync(); foreach (var module in modules) { var options = _controller.GetViewportOptions(module.ModuleId); if (options.Length > 0) { Categories.Add(new ViewportOptionsViewModel(module, options, _controller)); } } Categories.Add(new CategoryHeaderSettingsViewModel("ADVANCED")); Categories.Add(new GraphicsSettingsViewModel(_controller)); Categories.Add(new CameraSettingsViewModel(_controller)); Categories.Add(new CameraMirrorsSettingsViewModel(_controller)); Categories.Add(new TerrainSettingsViewModel(_controller)); Categories.Add(new TerrainMirrorSettingsViewModel(_controller)); Categories.Add(new TerrainReflectionSettingsViewModel(_controller)); Categories.Add(new SoundSettingsViewModel(_controller)); SelectedCategory.Value = Categories.First(c => !(c is CategoryHeaderSettingsViewModel)); SelectedCategory.Subscribe(OnSelectedCategoryChanged); await base.InitializeAsync(); }
private async Task PopulateProfileSettingsAsync() { var profileName = _profileSettingsService.SelectedProfileName; var optionsCategories = _controller.GetDcsOptionCategories(); Categories.Add(new CategoryHeaderSettingsViewModel($"PROFILE SETTINGS ({profileName})")); Categories.Add(new InstallationSettingsViewModel(_controller)); if (optionsCategories.Length > 0) { Categories.Add(new CategoryHeaderSettingsViewModel($" DCS")); } foreach (var category in optionsCategories.OrderBy(c => c.DisplayOrder)) { Categories.Add(new DcsOptionCategoryViewModel(" " + category.DisplayName.ToUpper(), category.Id, _controller)); } var eventArgs = new PopulateSettingsEventArgs(_controller); await _eventRegistry.InvokePopulateSettingsAsync(this, eventArgs); foreach (var(category, models) in eventArgs.Settings) { Categories.Add(new CategoryHeaderSettingsViewModel($" {category}")); foreach (var model in models) { Categories.Add(model); } } Categories.Add(new CategoryHeaderSettingsViewModel($" ADVANCED")); Categories.Add(new GeneralSettingsViewModel(_controller)); Categories.Add(new GraphicsSettingsViewModel(_controller)); //Categories.Add(new CameraSettingsViewModel(_controller)); //Categories.Add(new CameraMirrorsSettingsViewModel(_controller)); //Categories.Add(new TerrainSettingsViewModel(_controller)); //Categories.Add(new TerrainMirrorSettingsViewModel(_controller)); //Categories.Add(new TerrainReflectionSettingsViewModel(_controller)); Categories.Add(new SoundSettingsViewModel(_controller)); SelectedCategory.Value = Categories.First(c => !(c is CategoryHeaderSettingsViewModel)); SelectedCategory.Subscribe(OnSelectedCategoryChanged); }
private async Task PopulateProfileSettingsAsync() { var profileName = _profileSettingsService.SelectedProfileName; var optionsCategories = _controller.GetDcsOptionCategories(); Categories.Add(new CategoryHeaderSettingsViewModel($"PROFILE SETTINGS ({profileName})")); if (optionsCategories.Length > 0) { Categories.Add(new CategoryHeaderSettingsViewModel($" DCS")); } foreach (var category in optionsCategories.OrderBy(c => c.DisplayOrder)) { Categories.Add(new DcsOptionCategoryViewModel(" " + category.DisplayName.ToUpper(), category.Id, _controller)); } Categories.Add(new CategoryHeaderSettingsViewModel($" VIEWPORTS")); Categories.Add(new ViewportSettingsViewModel(_controller)); var modules = await _controller.GetInstalledAircraftModulesAsync(); foreach (var module in modules) { var options = _controller.GetViewportOptions(module.ModuleId); if (options.Length > 0) { Categories.Add(new ViewportOptionsViewModel(module, options, _controller)); } } Categories.Add(new CategoryHeaderSettingsViewModel($" ADVANCED")); Categories.Add(new GraphicsSettingsViewModel(_controller)); //Categories.Add(new CameraSettingsViewModel(_controller)); //Categories.Add(new CameraMirrorsSettingsViewModel(_controller)); //Categories.Add(new TerrainSettingsViewModel(_controller)); //Categories.Add(new TerrainMirrorSettingsViewModel(_controller)); //Categories.Add(new TerrainReflectionSettingsViewModel(_controller)); Categories.Add(new SoundSettingsViewModel(_controller)); SelectedCategory.Value = Categories.First(c => !(c is CategoryHeaderSettingsViewModel)); SelectedCategory.Subscribe(OnSelectedCategoryChanged); }