protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { PropertyReference propertyReference1 = this.GetMediaTimelinePropertyReference(propertyReference); if (propertyReference1 != null) { MediaTimelineSceneNode owningTimeline = this.OwningTimeline; if (owningTimeline != null) { if (modification == SceneNode.Modification.ClearValue) { owningTimeline.ClearValue(propertyReference1); return; } if (modification != SceneNode.Modification.SetValue) { return; } owningTimeline.SetValue(propertyReference1, valueToSet); return; } } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { bool flag = DesignTimeProperties.EulerAnglesProperty.Equals((object)propertyReference.LastStep); if (!flag || !this.ViewModel.AnimationEditor.IsKeyFraming || this.ViewModel.IsForcingBaseValue) { base.ModifyValue(propertyReference, valueToSet, modification, index); } if (!flag) { return; } propertyReference = propertyReference.Subreference(0, propertyReference.Count - 2); propertyReference = propertyReference.Append(Base3DElement.RotateTransform3DRotationProperty); if (valueToSet is Vector3D) { Quaternion quaternion = Helper3D.QuaternionFromEulerAngles((Vector3D)valueToSet); valueToSet = (object)new AxisAngleRotation3D(RoundingHelper.RoundDirection(quaternion.Axis), RoundingHelper.RoundAngle(quaternion.Angle)); } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (modification == SceneNode.Modification.SetValue || modification == SceneNode.Modification.InsertValue) { ItemsControlElement.ClearMutuallyExclusivePropertyIfNeeded((SceneElement)this, propertyReference); } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (modification == SceneNode.Modification.SetValue || modification == SceneNode.Modification.InsertValue) { ReferenceStep firstStep = propertyReference.FirstStep; if (valueToSet is bool && (bool)valueToSet && PanelElement.IsItemsHostProperty.Equals((object)firstStep)) { ISceneNodeCollection <SceneNode> collectionForProperty = this.GetCollectionForProperty(PanelElement.ChildrenProperty); if (collectionForProperty != null) { foreach (SceneNode sceneNode in (IEnumerable <SceneNode>)collectionForProperty) { SceneElement element = sceneNode as SceneElement; if (element != null) { this.ViewModel.AnimationEditor.DeleteAllAnimationsInSubtree(element); } } collectionForProperty.Clear(); } } else if (PanelElement.ChildrenProperty.Equals((object)firstStep)) { IProperty property = this.ProjectContext.ResolveProperty(PanelElement.IsItemsHostProperty); if (property != null) { object localValue = this.GetLocalValue((IPropertyId)property); if (localValue != null && (bool)localValue) { this.ClearLocalValue((IPropertyId)property); } } } } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (propertyReference.LastStep.Equals((object)ChangePropertyActionNode.PropertyNameProperty) && modification == SceneNode.Modification.ClearValue) { this.ClearValue(ChangePropertyActionNode.ValueProperty); } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { this.EnsureKeySplineIfNeeded(propertyReference); base.ModifyValue(propertyReference, valueToSet, modification, index); }
private void ModifyTextValue(IViewTextRange textRange, PropertyReference propertyReference, int index, object value, SceneNode.Modification modification) { if (value is Microsoft.Expression.DesignModel.DocumentModel.DocumentNode || value is MarkupExtension) { return; } PerformanceUtility.MeasurePerformanceUntilRender(PerformanceEvent.TextSetProperty); value = RichTextBoxRangeElement.GetUpdatedComplexProperty(textRange, propertyReference, index, value, modification); ReferenceStep firstStep = propertyReference.FirstStep; IProperty property = textRange.Platform.Metadata.ResolveProperty((IPropertyId)firstStep); if (property != null) { if (modification == SceneNode.Modification.ClearValue) { value = this.ViewModel.DefaultView.ConvertToWpfValue(this.ViewModel.DefaultView.ConvertFromWpfPropertyReference(propertyReference).LastStep.GetDefaultValue(typeof(object))); } if (property.Equals((object)RichTextBoxRangeElement.TextIndentPropertyId) && (double)value < 0.0) { value = (object)0.0; } textRange.ApplyPropertyValue((IPropertyId)property, value); bool flag = RichTextBoxElement.IsParagraphProperty(propertyReference); PropertyReference propertyReference1 = DesignTimeProperties.GetShadowPropertyReference(propertyReference, (ITypeId)this.Type); if (propertyReference1 != null && !DesignTimeProperties.UseShadowPropertyForInstanceBuilding(this.ViewModel.Document.DocumentContext.TypeResolver, (IPropertyId)propertyReference1.FirstStep)) { propertyReference1 = (PropertyReference)null; } if (modification == SceneNode.Modification.ClearValue && propertyReference1 == null) { propertyReference1 = propertyReference; } if (propertyReference1 != null) { IViewTextElement viewTextElement1 = (IViewTextElement)null; if (textRange.Start.CompareTo(textRange.End) != 0 || textRange.Start.CompareTo(((IViewTextElement)textRange.Start.Parent).ContentStart) != 0 && textRange.Start.CompareTo(((IViewTextElement)textRange.Start.Parent).ContentEnd) != 0) { for (IViewTextPointer viewTextPointer = textRange.Start; viewTextPointer != null && viewTextPointer.CompareTo(textRange.End) <= 0; viewTextPointer = viewTextPointer.GetNextInsertionPosition(LogicalDirection.Forward)) { IViewTextElement viewTextElement2 = viewTextPointer.Parent as IViewTextElement; if (viewTextElement2 != null && (viewTextElement1 == null || viewTextElement1.PlatformSpecificObject != viewTextElement2.PlatformSpecificObject)) { viewTextElement1 = viewTextElement2; if (viewTextElement1 != null && (flag && viewTextElement1 is Paragraph || !flag && viewTextElement1 is Run)) { if (modification == SceneNode.Modification.ClearValue) { propertyReference1.ClearValue((object)viewTextElement1); } else { propertyReference1.SetValue((object)viewTextElement1, value); } } } } } } } if (property.Equals((object)RichTextBoxRangeElement.ForegroundProperty) || property.Equals((object)RichTextBoxRangeElement.TextElementForegroundProperty)) { TextBlockEditProxy textBlockEditProxy = this.TextEditProxy as TextBlockEditProxy; if (textBlockEditProxy != null) { textBlockEditProxy.UpdateCaretBrush(); } } if (this.TextEditProxy == null) { return; } this.TextEditProxy.Serialize(); this.TextEditProxy.UpdateDocumentModel(); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (!this.ShouldSerialize && this.ViewModel != null && (modification == SceneNode.Modification.InsertValue || modification == SceneNode.Modification.SetValue)) { this.ShouldSerialize = true; } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { base.ModifyValue(propertyReference, valueToSet, modification, index); if (this.ViewModel.ActiveEditContext != null && propertyReference != null) { if (this.ViewModel.ActiveEditContext.OutOfPlaceOverriddenProperties == null) { this.ViewModel.ActiveEditContext.OutOfPlaceOverriddenProperties = (ICollection <IProperty>) new HashSet <IProperty>(); } if (!this.ViewModel.ActiveEditContext.OutOfPlaceOverriddenProperties.Contains((IProperty)propertyReference.FirstStep)) { this.ViewModel.ActiveEditContext.OutOfPlaceOverriddenProperties.Add((IProperty)propertyReference.FirstStep); } } if (this.ViewModel.AnimationEditor.IsCurrentlyAnimated((SceneNode)this, propertyReference, propertyReference.Count)) { return; } IViewObject viewTargetElement = this.ViewTargetElement; if (viewTargetElement == null) { return; } DocumentNode correspondingDocumentNode = this.ViewModel.DefaultView.GetCorrespondingDocumentNode(viewTargetElement, false); if (correspondingDocumentNode == null || correspondingDocumentNode == this.DocumentNode || (!correspondingDocumentNode.IsInDocument || correspondingDocumentNode.DocumentRoot != this.ViewModel.DocumentRoot)) { return; } SceneNode sceneNode = this.ViewModel.GetSceneNode(correspondingDocumentNode); ReferenceStep referenceStep = propertyReference[0]; if (sceneNode == null || referenceStep.MemberType == MemberType.DesignTimeProperty || (!referenceStep.TargetType.IsAssignableFrom(sceneNode.TargetType) || sceneNode.IsSet((IPropertyId)referenceStep) != PropertyState.Set)) { return; } sceneNode.ClearLocalValue((IPropertyId)referenceStep); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (propertyReference.LastStep.Equals((object)ArcShapeElement.ArcThicknessUnitProperty) && valueToSet != null) { string str = valueToSet.ToString(); if (str == "Pixel") { this.UpdateArcThicknessToPixel(); } else if (str == "Percent") { this.UpdateArcThicknessToPercent(); } } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (!this.ShouldSerialize && this.ViewModel != null && (modification == SceneNode.Modification.InsertValue || modification == SceneNode.Modification.SetValue)) { this.ShouldSerialize = true; } if (this.StateGroup != null && !this.StateGroup.ShouldSerialize) { this.StateGroup.ShouldSerialize = true; } base.ModifyValue(propertyReference, valueToSet, modification, index); if (this.ViewModel == null || !propertyReference.FirstStep.Equals((object)VisualStateTransitionSceneNode.GeneratedEasingFunctionProperty) && !propertyReference.FirstStep.Equals((object)VisualStateTransitionSceneNode.GeneratedDurationProperty) && !propertyReference.FirstStep.Equals((object)VisualStateManagerSceneNode.TransitionEffectProperty)) { return; } this.UpdateTransitionStoryboard(true, (Dictionary <TimelineSceneNode.PropertyNodePair, TransitionAnimationData>)null); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (PlatformTypes.ItemsControl.IsAssignableFrom((ITypeId)this.Type) && (modification == SceneNode.Modification.SetValue || modification == SceneNode.Modification.InsertValue)) { ItemsControlElement.ClearMutuallyExclusivePropertyIfNeeded((SceneElement)this, propertyReference); } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { LayoutUtilities.DetectLayoutOverrides((SceneElement)this, propertyReference); if (this is ITextFlowSceneNode) { this.ClearPropertyOnTextRuns(propertyReference); } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (propertyReference.LastStep.Equals((object)GradientBrushNode.MappingModeProperty)) { object obj = this.ConvertToWpfValue(valueToSet); if (obj is BrushMappingMode) { BrushMappingMode mappingMode = (BrushMappingMode)obj; this.UpdateBrushForMappingModeChange(propertyReference.Subreference(0, propertyReference.Count - 2), mappingMode); } } base.ModifyValue(propertyReference, valueToSet, modification, index); }
private static object GetUpdatedComplexProperty(IViewTextRange target, PropertyReference propertyReference, int index, object value, SceneNode.Modification modification) { ReferenceStep firstStep = propertyReference.FirstStep; IProperty property = target.Platform.Metadata.ResolveProperty((IPropertyId)firstStep); if (property != null && RichTextBoxRangeElement.IsComplexProperty((IPlatformMetadata)target.Platform.Metadata, property) && propertyReference.Count > 1) { PropertyReference subReference = RichTextBoxRangeElement.CreateSubReference(propertyReference); object target1; if (target.IsEmpty) { target1 = target.GetPropertyValue((IPropertyId)property); } else { IViewTextPointer viewTextPointer = target.Start; if (!viewTextPointer.IsAtInsertionPosition) { viewTextPointer = viewTextPointer.GetNextInsertionPosition(LogicalDirection.Forward); } target1 = !RichTextBoxElement.IsParagraphProperty(propertyReference) ? viewTextPointer.Parent.GetValue(property) : viewTextPointer.Paragraph.GetValue(property); } Freezable freezable = target1 as Freezable; if (freezable != null) { target1 = (object)freezable.Clone(); } if (target1 != null) { switch (modification) { case SceneNode.Modification.SetValue: target1 = subReference.SetValue(target1, value); break; case SceneNode.Modification.InsertValue: subReference.Insert(target1, index, value); break; case SceneNode.Modification.RemoveValue: subReference.RemoveAt(target1, index); break; default: throw new InvalidEnumArgumentException("modification", (int)modification, typeof(SceneNode.Modification)); } } value = target1; } return(value); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (propertyReference.Count == 1 && propertyReference.FirstStep.Equals((object)MediaTimelineSceneNode.SourceProperty)) { bool flag = false; if (modification == SceneNode.Modification.SetValue) { Uri uri = valueToSet as Uri; if (uri != (Uri)null) { this.ClearLocalValue(TimelineSceneNode.DurationProperty); Uri mediaUri = this.ViewModel.XamlDocument.DocumentContext.MakeDesignTimeUri(uri); MediaOpener mediaOpener = new MediaOpener(uri.OriginalString, mediaUri, this.DesignerContext.MessageDisplayService); bool? nullable = mediaOpener.OpenMedia(); if (nullable.HasValue && nullable.Value) { Duration naturalDuration = mediaOpener.Player.NaturalDuration; if (naturalDuration.HasTimeSpan) { this.SetLocalValue(DesignTimeProperties.DesignTimeNaturalDurationProperty, (object)naturalDuration.TimeSpan.TotalSeconds); } else { flag = true; } } else { flag = true; } } } else if (modification == SceneNode.Modification.ClearValue) { this.ClearLocalValue(TimelineSceneNode.DurationProperty); flag = true; } if (flag) { this.SetLocalValue(DesignTimeProperties.DesignTimeNaturalDurationProperty, (object)0.0); } } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (propertyReference.FirstStep.Equals((object)TextBlockElement.TextProperty)) { ISceneNodeCollection <SceneNode> collectionForProperty = this.GetCollectionForProperty(TextBlockElement.InlinesProperty); if (collectionForProperty != null) { collectionForProperty.Clear(); } } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { if (!this.ShouldSerialize && modification == SceneNode.Modification.SetValue) { ReferenceStep lastStep = propertyReference.LastStep; if (modification == SceneNode.Modification.SetValue) { this.ShouldSerialize = true; StoryboardTimelineSceneNode timelineSceneNode = this.Parent as StoryboardTimelineSceneNode; if (timelineSceneNode != null) { timelineSceneNode.ShouldSerialize = true; } } } base.ModifyValue(propertyReference, valueToSet, modification, index); }
protected override void ModifyValue(PropertyReference propertyReference, object valueToSet, SceneNode.Modification modification, int index) { base.ModifyValue(propertyReference, valueToSet, modification, index); if (!this.IsInDocument) { return; } SceneNode sourceNode = (SceneNode)null; bool flag = this.IsSet(BehaviorEventTriggerBaseNode.BehaviorSourceObjectProperty) == PropertyState.Set; int num = (int)this.IsSet(BehaviorEventTriggerBaseNode.BehaviorSourceNameProperty); if (propertyReference.LastStep.Equals((object)BehaviorEventTriggerBaseNode.BehaviorSourceObjectProperty)) { this.ViewModel.Document.OnUpdatedEditTransaction(); if (modification == SceneNode.Modification.SetValue) { sourceNode = this.ViewModel.CreateSceneNode(this.GetComputedValue(propertyReference)); } else if (modification == SceneNode.Modification.ClearValue) { sourceNode = BehaviorHelper.FindNamedElement((SceneNode)this, this.SourceName); } } else if (!flag && propertyReference.LastStep.Equals((object)BehaviorEventTriggerBaseNode.BehaviorSourceNameProperty)) { sourceNode = BehaviorHelper.FindNamedElement((SceneNode)this, valueToSet as string); } BehaviorEventTriggerNode.FixUpEventNameImpl(this, sourceNode); }