Example #1
0
        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, info, options, groupName, preferences, notificationPreferences)
        {
            _truePreview  = truePreview;
            _falsePreview = falsePreview;

            var codeStyleOption = ((CodeStyleOption <bool>)options.GetOption(new OptionKey(option, option.IsPerLanguage ? info.Language : null)));

            _selectedPreference = Preferences.Single(c => c.IsChecked == codeStyleOption.Value);

            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));
        }
Example #2
0
        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, info, options, groupName, preferences, notificationPreferences)
        {
            _truePreview  = truePreview;
            _falsePreview = falsePreview;

            var optionValue = options.GetOption(new OptionKey(option, option.IsPerLanguage ? info.Language : null));

            if (!(optionValue is CodeStyleOption <bool> codeStyleOption))
            {
                throw new InvalidOperationException(optionValue + " is no CodeStyleOption<bool>. Queried option: " + option);
            }
            _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 GridOptionPreviewControl(IServiceProvider serviceProvider, Func <OptionSet, IServiceProvider, AbstractOptionPreviewViewModel> createViewModel) : base(serviceProvider)
        {
            viewModel = createViewModel(TypeSystemService.Workspace.Options, serviceProvider);
            CreateView();
            var firstItem = this.viewModel.CodeStyleItems.OfType <AbstractCodeStyleOptionViewModel> ().First();

            this.viewModel.SetOptionAndUpdatePreview((firstItem.SelectedPreference ?? firstItem.Preferences[0]).IsChecked, firstItem.Option, firstItem.GetPreview());
        }
        public AbstractCheckBoxViewModel(IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info)
        {
            _truePreview  = truePreview;
            _falsePreview = falsePreview;

            Info        = info;
            Option      = option;
            Description = description;
        }
Example #5
0
        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 EnumCodeStyleOptionViewModel(
     Option <CodeStyleOption <T> > option,
     string description,
     T [] enumValues,
     string [] previews,
     AbstractOptionPreviewViewModel info,
     OptionSet options,
     string groupName,
     List <CodeStylePreference> preferences)
     : this(option, null, description, enumValues, previews, info,
            options, groupName, preferences)
 {
 }
Example #7
0
 public AbstractCodeStyleOptionViewModel(
     IOption option,
     string description,
     AbstractOptionPreviewViewModel info,
     OptionSet options,
     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}";
 }
        private EnumCodeStyleOptionViewModel(
            IOption option,
            string language,
            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);

            _enumValues = enumValues.ToImmutableArray();
            _previews   = previews.ToImmutableArray();

            var codeStyleOption = (CodeStyleOption <T>)options.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.Value == codeStyleOption.Notification.Value);

            _selectedNotificationPreference = NotificationPreferences.Single(p => p.Notification.Value == notificationViewModel.Notification.Value);

            NotifyPropertyChanged(nameof(SelectedPreference));
            NotifyPropertyChanged(nameof(SelectedNotificationPreference));
        }
 public RadioButtonViewModel(string description, string preview, string group, TOption value, Option <TOption> option, AbstractOptionPreviewViewModel info, OptionSet options)
     : base(description, preview, info, options, isChecked: options.GetOption(option).Equals(value), group: group)
 {
     _value  = value;
     _option = option;
 }
Example #10
0
        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>)BooleanCodeStyleOptionViewModel.GetOptionOrDefault(options, option, info.Language));

            SetProperty(ref _isChecked, codeStyleOption.Value);

            var notificationViewModel = items.Where(i => i.Notification.Severity == codeStyleOption.Notification.Severity).Single();

            SetProperty(ref _selectedNotificationOption, notificationViewModel);
        }
 public RadioButtonViewModel(string description, string preview, string group, TOption value, Option <TOption> option, AbstractOptionPreviewViewModel info, OptionSet options)
     : base(description, preview, info, options, isChecked: BooleanCodeStyleOptionViewModel.GetOptionOrDefault(options, option, info.Language).Equals(value), group: group)
 {
     _value  = value;
     _option = option;
 }
 internal override void SetOptionAndUpdatePreview(AbstractOptionPreviewViewModel info, string preview)
 {
     info.SetOptionAndUpdatePreview(_value, _option, preview);
 }
Example #13
0
 public CheckBoxOptionViewModel(IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionSet options)
     : base(option, description, truePreview, falsePreview, info)
 {
     SetProperty(ref _isChecked, (bool)options.GetOption(new OptionKey(option, option.IsPerLanguage ? info.Language : null)));
 }
 public CheckBoxOptionViewModel(IOption option, string description, string truePreview, string falsePreview, AbstractOptionPreviewViewModel info, OptionSet options)
     : base(option, description, truePreview, falsePreview, info)
 {
     SetProperty(ref _isChecked, (bool)BooleanCodeStyleOptionViewModel.GetOptionOrDefault(options, option, info.Language));
 }
Example #15
0
 public CheckBoxOptionViewModel(IOption option, string description, string preview, AbstractOptionPreviewViewModel info, OptionSet options)
     : this(option, description, preview, preview, info, options)
 {
 }
 public CheckBoxWithComboOptionViewModel(IOption option, string description, string preview, AbstractOptionPreviewViewModel info, OptionSet options, IList <NotificationOptionViewModel> items)
     : this(option, description, preview, preview, info, options, items)
 {
 }
Example #17
0
 internal abstract void SetOptionAndUpdatePreview(AbstractOptionPreviewViewModel info, string preview);
 public AbstractCheckBoxViewModel(IOption option, string description, string preview, AbstractOptionPreviewViewModel info)
     : this(option, description, preview, preview, info)
 {
 }
        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.Value == codeStyleOption.Notification.Value).Single();

            SetProperty(ref _selectedNotificationOption, notificationViewModel);
        }