public SettingsViewModel() { WindowThemeList.GetListFunc = () => Modules.ThemeModules.Current.ThemeHelper.ThemeList.Select(x => { var item = new ThemeItemViewModel<Theme, Models.ThemeItem<Theme>>(x.Value); if (item.Type == SettingsCurrent.Settings.WindowTheme_Theme) { WindowThemeList.SelectedItem = item; } return item; }).ToList(); WindowAccentList.GetListFunc = () => Modules.ThemeModules.Current.ThemeHelper.AccentList.Select(x => { var item = new ThemeItemViewModel<Accent, Models.ThemeItem<Accent>>(x.Value); if (item.Type == SettingsCurrent.Settings.WindowTheme_Accent) { WindowAccentList.SelectedItem = item; } return item; }).ToList(); WindowViewTypeList.GetListFunc = () => { var list = new List<WindowViewTypeViewModel>(); EnumEx.ForEach<Enums.WindowViewType>(item => { var vm = new WindowViewTypeViewModel(item); list.Add(vm); if (item == SettingsCurrent.Settings.WindowViewType) { WindowViewTypeList.SelectedItem = vm; } }); return list; }; WindowThemeList.SelectedChange += (sender, e) => Modules.ThemeModules.Current.ChangeTheme(e.Type); WindowAccentList.SelectedChange += (sender, e) => Modules.ThemeModules.Current.ChangeAccent(e.Type); WindowViewTypeList.SelectedChange += (sender, e) => Modules.WindowViewModules.Current.Change(e.Type); }
public SettingsViewModel() { #region init var assembly = System.Reflection.Assembly.GetExecutingAssembly().GetName(); PluginInfo = string.Format("{0} Version {1}", assembly.Name, assembly.Version.ToString()); WindowThemeList.GetListFunc = () => { var list = new List<ThemeItemViewModel<Theme, Models.ThemeItem<Theme>>>(); foreach (var item in Modules.ThemeModules.Current.ThemeHelper.ThemeList) { var vm = new ThemeItemViewModel<Theme, Models.ThemeItem<Theme>>(item.Value); list.Add(vm); if (vm.Type == Data.Settings.Current.WindowTheme_Theme) { WindowThemeList.SelectedItem = vm; } } return list; }; WindowAccentList.GetListFunc = () => { var list = new List<ThemeItemViewModel<Accent, Models.ThemeItem<Accent>>>(); foreach (var item in Modules.ThemeModules.Current.ThemeHelper.AccentList) { var vm = new ThemeItemViewModel<Accent, Models.ThemeItem<Accent>>(item.Value); list.Add(vm); if (vm.Type == Data.Settings.Current.WindowTheme_Accent) { WindowAccentList.SelectedItem = vm; } } return list; }; WindowViewTypeList.GetListFunc = () => { var list = new List<WindowViewTypeViewModel>(); EnumEx.ForEach<Enums.WindowViewType>(item => { var vm = new WindowViewTypeViewModel(item); list.Add(vm); if (item == Data.Settings.Current.WindowViewType) { WindowViewTypeList.SelectedItem = vm; } }); return list; }; FeetStyleTypeList.GetListFunc = () => { var list = new List<FeetStyleTypeViewModel>(); EnumEx.ForEach<Enums.FeetStyleType>(item => { var vm = new FeetStyleTypeViewModel(item); list.Add(vm); if (item == Data.Settings.Current.SimpleFeetStyleType) { FeetStyleTypeList.SelectedItem = vm; } }); return list; }; WindowThemeList.SelectedChange += (sender, e) => { Modules.ThemeModules.Current.ChangeTheme(e.Type); }; WindowAccentList.SelectedChange += (sender, e) => { Modules.ThemeModules.Current.ChangeAccent(e.Type); }; WindowViewTypeList.SelectedChange += (sender, e) => { Modules.WindowViewModules.Current.Change(e.Type); }; FeetStyleTypeList.SelectedChange += (sender, e) => { Modules.SimpleFleetModules.Current.ChangeStyle(e.Type); }; Modules.SimpleFleetModules.Current.EnableSimpleFleetChange += (sender, e) => this.RaisePropertyChanged("EnableSimpleFleet"); #endregion }
public SettingsViewModel() { #region init var assembly = System.Reflection.Assembly.GetExecutingAssembly().GetName(); PluginInfo = string.Format("{0} Version {1}", assembly.Name, assembly.Version.ToString()); WindowThemeList.GetListFunc = () => { var list = new List <ThemeItemViewModel <Theme, Models.ThemeItem <Theme> > >(); foreach (var item in Modules.ThemeModules.Current.ThemeHelper.ThemeList) { var vm = new ThemeItemViewModel <Theme, Models.ThemeItem <Theme> >(item.Value); list.Add(vm); if (vm.Type == Data.Settings.Current.WindowTheme_Theme) { WindowThemeList.SelectedItem = vm; } } return(list); }; WindowAccentList.GetListFunc = () => { var list = new List <ThemeItemViewModel <Accent, Models.ThemeItem <Accent> > >(); foreach (var item in Modules.ThemeModules.Current.ThemeHelper.AccentList) { var vm = new ThemeItemViewModel <Accent, Models.ThemeItem <Accent> >(item.Value); list.Add(vm); if (vm.Type == Data.Settings.Current.WindowTheme_Accent) { WindowAccentList.SelectedItem = vm; } } return(list); }; WindowViewTypeList.GetListFunc = () => { var list = new List <WindowViewTypeViewModel>(); EnumEx.ForEach <Enums.WindowViewType>(item => { var vm = new WindowViewTypeViewModel(item); list.Add(vm); if (item == Data.Settings.Current.WindowViewType) { WindowViewTypeList.SelectedItem = vm; } }); return(list); }; FeetStyleTypeList.GetListFunc = () => { var list = new List <FeetStyleTypeViewModel>(); EnumEx.ForEach <Enums.FeetStyleType>(item => { var vm = new FeetStyleTypeViewModel(item); list.Add(vm); if (item == Data.Settings.Current.SimpleFeetStyleType) { FeetStyleTypeList.SelectedItem = vm; } }); return(list); }; WindowThemeList.SelectedChange += (sender, e) => { Modules.ThemeModules.Current.ChangeTheme(e.Type); }; WindowAccentList.SelectedChange += (sender, e) => { Modules.ThemeModules.Current.ChangeAccent(e.Type); }; WindowViewTypeList.SelectedChange += (sender, e) => { Modules.WindowViewModules.Current.Change(e.Type); }; FeetStyleTypeList.SelectedChange += (sender, e) => { Modules.SimpleFleetModules.Current.ChangeStyle(e.Type); }; Modules.SimpleFleetModules.Current.EnableSimpleFleetChange += (sender, e) => this.RaisePropertyChanged("EnableSimpleFleet"); #endregion }