public CheckBoxWithComboOptionViewModel( IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionSet options, IList <NotificationOptionViewModel> items ) : base(option, description, truePreview, falsePreview, info) { NotificationOptions = items; var codeStyleOption = ( (CodeStyleOption <bool>)options.GetOption( new OptionKey(option, option.IsPerLanguage ? info.Language : null) ) ); SetProperty(ref _isChecked, codeStyleOption.Value); var notificationViewModel = items .Where(i => i.Notification.Severity == codeStyleOption.Notification.Severity) .Single(); SetProperty(ref _selectedNotificationOption, notificationViewModel); }
public EnumCodeStyleOptionViewModel( Option <CodeStyleOption <T> > option, string description, T[] enumValues, string[] previews, AbstractOptionPreviewViewModel info, OptionSet options, string groupName, List <CodeStylePreference> preferences) : base(option, description, info, options, groupName, preferences) { Debug.Assert(preferences.Count == enumValues.Length); Debug.Assert(previews.Length == enumValues.Length); var expectedEnumValues = Enum.GetValues(typeof(T)); Debug.Assert(expectedEnumValues.Length == enumValues.Length, "Enum was updated, but UI wasn't."); _enumValues = enumValues.ToImmutableArray(); _previews = previews.ToImmutableArray(); var codeStyleOption = options.GetOption(option); var enumIndex = _enumValues.IndexOf(codeStyleOption.Value); _selectedPreference = Preferences[enumIndex]; var notificationViewModel = NotificationPreferences.Single(i => i.Notification.Value == codeStyleOption.Notification.Value); _selectedNotificationPreference = NotificationPreferences.Single(p => p.Notification.Value == notificationViewModel.Notification.Value); NotifyPropertyChanged(nameof(SelectedPreference)); NotifyPropertyChanged(nameof(SelectedNotificationPreference)); }
public BooleanCodeStyleOptionViewModel( IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionStore optionStore, string groupName, List <CodeStylePreference> preferences = null, List <NotificationOptionViewModel> notificationPreferences = null) : base(option, description, info, groupName, preferences, notificationPreferences) { _truePreview = truePreview; _falsePreview = falsePreview; var codeStyleOption = ((CodeStyleOption <bool>)optionStore.GetOption(new OptionKey(option, option.IsPerLanguage ? info.Language : null))); _selectedPreference = Preferences.Single(c => c.IsChecked == codeStyleOption.Value); var notificationViewModel = NotificationPreferences.Single(i => i.Notification.Severity == codeStyleOption.Notification.Severity); _selectedNotificationPreference = NotificationPreferences.Single(p => p.Notification.Severity == notificationViewModel.Notification.Severity); NotifyPropertyChanged(nameof(SelectedPreference)); NotifyPropertyChanged(nameof(SelectedNotificationPreference)); }
public AbstractCheckBoxViewModel( IOption option, string description, string preview, AbstractOptionPreviewViewModel info ) : this(option, description, preview, preview, info) { }
public CheckBoxOptionViewModel(IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionSet options) { this.Option = option; Description = description; _truePreview = truePreview; _falsePreview = falsePreview; _info = info; SetProperty(ref _isChecked, (bool)options.GetOption(new OptionKey(option, option.IsPerLanguage ? info.Language : null))); }
public AbstractCheckBoxViewModel(IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info) { _truePreview = truePreview; _falsePreview = falsePreview; Info = info; Option = option; Description = description; }
public AbstractRadioButtonViewModel(string description, string preview, AbstractOptionPreviewViewModel info, OptionSet options, bool isChecked, string group) { Description = description; this.Preview = preview; _info = info; this.GroupName = group; SetProperty(ref _isChecked, isChecked); }
public CheckBoxOptionViewModel( IOption option, string description, string preview, AbstractOptionPreviewViewModel info, OptionStore optionStore ) : this(option, description, preview, preview, info, optionStore) { }
public CheckBoxWithComboOptionViewModel( IOption option, string description, string preview, AbstractOptionPreviewViewModel info, OptionSet options, IList <NotificationOptionViewModel> items ) : this(option, description, preview, preview, info, options, items) { }
internal override void LoadSettings() { this.ViewModel = _createViewModel(this.OptionService.GetOptions(), _serviceProvider); // Use the first item's preview. var firstItem = this.ViewModel.Items.OfType<CheckBoxOptionViewModel>().First(); this.ViewModel.SetOptionAndUpdatePreview(firstItem.IsChecked, firstItem.Option, firstItem.GetPreview()); DataContext = ViewModel; }
internal override void LoadSettings() { this.ViewModel = _createViewModel(this.OptionService.GetOptions(), _serviceProvider); var firstItem = this.ViewModel.CodeStyleItems.OfType <AbstractCodeStyleOptionViewModel>().First(); this.ViewModel.SetOptionAndUpdatePreview(firstItem.SelectedPreference.IsChecked, firstItem.Option, firstItem.GetPreview()); DataContext = ViewModel; }
public EnumCodeStyleOptionViewModel( Option <CodeStyleOption <T> > option, string description, T[] enumValues, string[] previews, AbstractOptionPreviewViewModel info, OptionStore optionStore, string groupName, List <CodeStylePreference> preferences) : this(option, language : null, description, enumValues, previews, info, optionStore, groupName, preferences) { }
internal OptionPreviewControl(IServiceProvider serviceProvider, Func <OptionSet, IServiceProvider, AbstractOptionPreviewViewModel> createViewModel) : base(serviceProvider) { InitializeComponent(); this.ViewModel = createViewModel(this.OptionService.GetOptions(), serviceProvider); // Use the first item's preview. var firstItem = this.ViewModel.Items.OfType <CheckBoxOptionViewModel>().First(); this.ViewModel.SetOptionAndUpdatePreview(firstItem.IsChecked, firstItem.Option, firstItem.GetPreview()); DataContext = ViewModel; }
public EnumCodeStyleOptionViewModel( PerLanguageOption <CodeStyleOption <T> > option, string language, string description, T[] enumValues, string[] previews, AbstractOptionPreviewViewModel info, OptionSet options, string groupName, List <CodeStylePreference> preferences) : this((IOption)option, language, description, enumValues, previews, info, options, groupName, preferences) { }
public AbstractCodeStyleOptionViewModel( IOption option, string description, AbstractOptionPreviewViewModel info, string groupName, List <CodeStylePreference> preferences = null, List <NotificationOptionViewModel> notificationPreferences = null) { Info = info; Option = option; Description = description; Preferences = preferences ?? GetDefaultPreferences(); NotificationPreferences = notificationPreferences ?? GetDefaultNotifications(); GroupName = groupName; GroupNameAndDescription = $"{groupName}, {description}"; }
public CheckBoxOptionViewModel( IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionStore optionStore ) : base(option, description, truePreview, falsePreview, info) { SetProperty( ref _isChecked, (bool)optionStore.GetOption( new OptionKey(option, option.IsPerLanguage ? info.Language : null) ) ); }
public BooleanCodeStyleOptionViewModel( IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionSet options, string groupName, List <CodeStylePreference> preferences = null, List <NotificationOptionViewModel> notificationPreferences = null) : base(option, description, truePreview, falsePreview, info, options, groupName, preferences, notificationPreferences) { var booleanOption = (bool)options.GetOption(new OptionKey(option, option.IsPerLanguage ? info.Language : null)); _selectedPreference = Preferences.Single(c => c.IsChecked == booleanOption); NotifyPropertyChanged(nameof(SelectedPreference)); }
public RadioButtonViewModel( string description, string preview, string group, TOption value, Option <TOption> option, AbstractOptionPreviewViewModel info, OptionStore optionStore ) : base( description, preview, info, isChecked: optionStore.GetOption(option).Equals(value), group: group ) { _value = value; _option = option; }
public AbstractCodeStyleOptionViewModel( IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionSet options, string groupName, List <CodeStylePreference> preferences = null, List <NotificationOptionViewModel> notificationPreferences = null) { _truePreview = truePreview; _falsePreview = falsePreview; Info = info; Option = option; Description = description; Preferences = preferences ?? GetDefaultPreferences(); NotificationPreferences = notificationPreferences ?? GetDefaultNotifications(); DescriptionMargin = 12d; GroupName = groupName; }
private EnumCodeStyleOptionViewModel( IOption option, string language, string description, T[] enumValues, string[] previews, AbstractOptionPreviewViewModel info, OptionStore optionStore, string groupName, List <CodeStylePreference> preferences) : base(option, description, info, groupName, preferences) { Debug.Assert(preferences.Count == enumValues.Length); Debug.Assert(previews.Length == enumValues.Length); _enumValues = enumValues.ToImmutableArray(); _previews = previews.ToImmutableArray(); var codeStyleOption = (CodeStyleOption <T>)optionStore.GetOption(new OptionKey(option, language)); var enumIndex = _enumValues.IndexOf(codeStyleOption.Value); if (enumIndex < 0 || enumIndex >= Preferences.Count) { enumIndex = 0; } _selectedPreference = Preferences[enumIndex]; var notificationViewModel = NotificationPreferences.Single(i => i.Notification.Severity == codeStyleOption.Notification.Severity); _selectedNotificationPreference = NotificationPreferences.Single(p => p.Notification.Severity == notificationViewModel.Notification.Severity); NotifyPropertyChanged(nameof(SelectedPreference)); NotifyPropertyChanged(nameof(SelectedNotificationPreference)); }
internal override void SetOptionAndUpdatePreview( AbstractOptionPreviewViewModel info, string preview ) => info.SetOptionAndUpdatePreview(_value, _option, preview);
internal abstract void SetOptionAndUpdatePreview( AbstractOptionPreviewViewModel info, string preview );