private void OnColorChanged(object sender, ModelPropertyChangedEventArgs e) { var brush = new SolidColorBrush((Color)e.NewValue); brush.Freeze(); SetValue(BrushProperty, brush); }
internal virtual void HandleBoundPropertyChanged(ModelBinding binding, ModelPropertyChangedEventArgs e, bool pushToSource) { object convertedValue = e.NewValue; if (binding.Converter != null && binding.Converter.ConvertBack(ref convertedValue) != null) { return; } if (pushToSource) { SynchronizeValue(binding.Source, binding.SourceProperty, convertedValue); } if (binding.Converter != null && binding.Converter.Convert(ref convertedValue) == null && !Equals(convertedValue, e.NewValue) && !ArrayEquals(convertedValue, e.NewValue)) { SynchronizeValue(this, e.Property, convertedValue); if (!String.IsNullOrEmpty(e.Property.PropertyName)) { var action = new Action(() => OnPropertyChanged(new PropertyChangedEventArgs(e.Property.PropertyName))); if (System.Windows.Application.Current != null && System.Windows.Application.Current.Dispatcher != null) { System.Windows.Application.Current.Dispatcher.BeginInvoke(action); } else { action(); } } } }
private void OnIsToolWindowVisibleChanged(object sender, ModelPropertyChangedEventArgs e) { if ((bool)e.NewValue == false) { Focus(); } }
internal void HandleModelPropertyChanged(ModelPropertyChangedEventArgs e) { ModelBinding binding; if (_bindings.TryGetValue(e.Property.Key, out binding) || _selfBindings.TryGetValue(e.Property.Key, out binding)) { if (binding.Mode != ModelBindingMode.OneWay) { HandleBoundPropertyChanged(binding, e, binding.Mode == ModelBindingMode.TwoWay); } } else { HandleUnboundPropertyChanged(e); } // if any self bindings are dependant on the modified field, update them now foreach (var kvp in _selfBindings) { if (kvp.Value.SourceProperty == e.Property) { RefreshBinding(kvp.Key, kvp.Value); } } }
private static void OnFilenameChanged(object sender, ModelPropertyChangedEventArgs e) { var vm = (ScriptViewModel)sender; var filename = (string)e.NewValue; vm.Title = String.IsNullOrEmpty(filename) ? "Script" : Path.GetFileName(filename); }
public void TestModelPropertyChanged() { ModelPropertyChangedEventArgs args = null; _model.AddPropertyChangedHandler(TestClass.StrProperty, (o, e) => args = e); _model.Str = "Default"; Assert.That(args, Is.Null); _model.Str = "Test"; Assert.That(args, Is.Not.Null); Assert.That(args.Property, Is.EqualTo(TestClass.StrProperty)); Assert.That(args.OldValue, Is.EqualTo("Default")); Assert.That(args.NewValue, Is.EqualTo("Test")); args = null; _model.Str = "Test"; Assert.That(args, Is.Null); _model.Str = "Test2"; Assert.That(args, Is.Not.Null); Assert.That(args.Property, Is.EqualTo(TestClass.StrProperty)); Assert.That(args.OldValue, Is.EqualTo("Test")); Assert.That(args.NewValue, Is.EqualTo("Test2")); _model.Str = "Default"; Assert.That(args, Is.Not.Null); Assert.That(args.Property, Is.EqualTo(TestClass.StrProperty)); Assert.That(args.OldValue, Is.EqualTo("Test2")); Assert.That(args.NewValue, Is.EqualTo("Default")); }
internal virtual void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { if (Requirement != null) { UpdateDefinition((bool)e.NewValue ? NumberFormat.Hexadecimal : NumberFormat.Decimal); } }
private static void OnValueChanged(object sender, ModelPropertyChangedEventArgs e) { var viewModel = (DecimalFieldViewModel)sender; var format = "{0:F" + viewModel.Precision + "}"; viewModel.SetText((e.NewValue == null) ? String.Empty : String.Format(format, e.NewValue)); }
internal void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { foreach (var requirement in Requirements) { requirement.OnShowHexValuesChanged(e); } }
internal void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { foreach (var condition in Conditions) { condition.OnShowHexValuesChanged(e); } }
private static void OnIsTextBindingDelayedChanged(object sender, ModelPropertyChangedEventArgs e) { if (!(bool)e.NewValue) { TextFieldViewModelBase.StopWaitingForTyping(); } }
/// <summary> /// Notifies any subscribers that the value of a <see cref="ModelProperty" /> has changed. /// </summary> protected override void OnModelPropertyChanged(ModelPropertyChangedEventArgs e) { // call HandleModelPropertyChanged and NotifyPropertyChangedHandlers instead of // base.OnModelPropertyChanged to avoid raising the ModelProperty.PropertyChangeHandlers // since we're just serving as a passthrough. HandleModelPropertyChanged(e); OnPropertyChanged(e); }
private void OnTextChanged(object sender, ModelPropertyChangedEventArgs e) { if (_searchPending) { _searchPending = false; PerformSearch(); } }
internal override void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { foreach (var group in Groups) { group.OnShowHexValuesChanged(e); } base.OnShowHexValuesChanged(e); }
internal override void HandleUnboundPropertyChanged(ModelPropertyChangedEventArgs e) { var error = Validate(e.Property, e.NewValue); SetError(e.Property, error); base.HandleUnboundPropertyChanged(e); }
/// <summary> /// Notifies any subscribers that the value of a <see cref="ModelProperty" /> has changed. /// </summary> /// <param name="e"></param> protected override void OnModelPropertyChanged(ModelPropertyChangedEventArgs e) { if (e.Property == IsRequiredProperty) { Validate(SelectedIdProperty); } base.OnModelPropertyChanged(e); }
internal override void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { base.OnShowHexValuesChanged(e); if (CompareRequirement != null) { UpdateOtherDefinition((bool)e.NewValue ? NumberFormat.Hexadecimal : NumberFormat.Decimal); } }
private static void OnIsDeletedChanged(object sender, ModelPropertyChangedEventArgs e) { var vm = (UpdateAchievementViewModel)sender; if (vm.IsDeleted) { vm.IsUpdated = false; } }
internal void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { if (_requirementGroups != null) { foreach (var group in _requirementGroups) { group.OnShowHexValuesChanged(e); } } }
private static void OnIsFixedSelectionChanged(object sender, ModelPropertyChangedEventArgs e) { var vm = (AutoCompleteFieldViewModel)sender; if ((bool)e.NewValue) { vm.RemovePropertyChangedHandler(TextProperty, vm.OnTextChanged); } else { vm.AddPropertyChangedHandler(TextProperty, vm.OnTextChanged); } }
private void OnSourcePropertyChanged(object sender, ModelPropertyChangedEventArgs e) { if (e.Property.Key != _propertyBeingSynchronized) { foreach (var kvp in _bindings) { if (kvp.Value.SourceProperty == e.Property) { RefreshBinding(kvp.Key, kvp.Value); } } } }
private void OnIsCenterOnLineRequestedChanged(object sender, ModelPropertyChangedEventArgs e) { if ((bool)e.NewValue == true) { Dispatcher.BeginInvoke(new Action(() => { if (IsLoaded) { CenterOnLine(); } })); } }
private void OnSummaryPropertyChanged(object sender, ModelPropertyChangedEventArgs e) { Dispatcher.Invoke(new Action(() => { var rowViewModels = RowViewModels; foreach (var column in Columns) { if (column.SourceProperty == e.Property) { column.Summarize(rowViewModels); } } })); }
/// <summary> /// Notifies any subscribers that the value of a <see cref="ModelProperty" /> has changed. /// </summary> protected override void OnModelPropertyChanged(ModelPropertyChangedEventArgs e) { if (e.Property == TextFieldViewModel.TextProperty && IsTextBindingDelayed) { WaitForTyping(() => base.OnModelPropertyChanged(e)); return; } else if (e.Property == IsRequiredProperty) { Validate(TextProperty); } base.OnModelPropertyChanged(e); }
internal override void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { foreach (var group in RequirementGroups) { group.OnShowHexValuesChanged(e); } Generated.OnShowHexValuesChanged(e); Local.OnShowHexValuesChanged(e); Unofficial.OnShowHexValuesChanged(e); Core.OnShowHexValuesChanged(e); base.OnShowHexValuesChanged(e); }
private void OnTextChanged(object sender, ModelPropertyChangedEventArgs e) { _matches.Clear(); var searchText = (string)e.NewValue; if (String.IsNullOrEmpty(searchText)) { Index = 0; MatchCount = 0; return; } var nextIndex = -1; var cursorLine = Owner.CursorLine; var cursorColumn = Owner.CursorColumn; foreach (var line in Owner.Lines) { var lineText = line.PendingText ?? line.Text; int start = 0; do { var index = lineText.IndexOf(searchText, start, StringComparison.OrdinalIgnoreCase); if (index == -1) { break; } if (nextIndex == -1) { if (line.Line > cursorLine || (line.Line == cursorLine && index + 1 + searchText.Length >= cursorColumn)) { nextIndex = _matches.Count; } } _matches.Add(new MatchLocation { Line = line.Line, Column = index + 1 }); start = index + searchText.Length; } while (true); } MatchCount = _matches.Count; // force OnIndexChanged by toggling to 0 briefly before setting the actual new value Index = 0; Index = nextIndex + 1; }
internal virtual void OnShowHexValuesChanged(ModelPropertyChangedEventArgs e) { foreach (var trigger in Triggers) { foreach (var group in trigger.Groups) { group.OnShowHexValuesChanged(e); } } Generated.OnShowHexValuesChanged(e); Local.OnShowHexValuesChanged(e); Published.OnShowHexValuesChanged(e); }
private static void OnShowHexValuesChanged(object sender, ModelPropertyChangedEventArgs e) { ServiceRepository.Instance.FindService <ISettings>().HexValues = (bool)e.NewValue; var vm = (MainWindowViewModel)sender; var game = vm.Game; if (game != null) { foreach (var achievement in game.Editors.OfType <AssetViewModelBase>()) { achievement.OnShowHexValuesChanged(e); } } }
public void TestDependantPropertyUnitializedSubScription() { ModelPropertyChangedEventArgs args = null; _model.Suffix = "suffix"; _model.Str = "One"; _model.AddPropertyChangedHandler(TestClass.LazyProperty, (o, e) => args = e); Assert.That(args, Is.Null); _model.Str = "Two"; Assert.That(args, Is.Not.Null); Assert.That(args.OldValue, Is.EqualTo("Onesuffix")); Assert.That(args.NewValue, Is.EqualTo("Twosuffix")); }
private static void OnGameChanged(object sender, ModelPropertyChangedEventArgs e) { if (e.OldValue == null) { var vm = (MainWindowViewModel)sender; vm.SaveScriptCommand = new DelegateCommand(() => vm.SaveScript()); vm.SaveScriptAsCommand = new DelegateCommand(() => vm.SaveScriptAs()); vm.RefreshScriptCommand = new DelegateCommand(vm.RefreshScript); vm.UpdateLocalCommand = new DelegateCommand(vm.UpdateLocal); vm.OnPropertyChanged(() => vm.SaveScriptCommand); vm.OnPropertyChanged(() => vm.SaveScriptAsCommand); vm.OnPropertyChanged(() => vm.RefreshScriptCommand); vm.OnPropertyChanged(() => vm.UpdateLocalCommand); } }