Esempio n. 1
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (this.designerContext.ActiveSceneViewModel == null)
     {
         this.lastEditingContainer = (SceneNode)null;
     }
     else
     {
         ExpressionView palette = this.Palette;
         if (palette == null || this.designerContext.ActiveSceneViewModel.ActiveEditingContainer == null)
         {
             return;
         }
         SceneNode sceneNode = this.designerContext.ActiveSceneViewModel.GetSceneNode(this.designerContext.ActiveSceneViewModel.ActiveEditingContainer.DocumentNode);
         if (sceneNode == this.lastEditingContainer)
         {
             return;
         }
         this.lastEditingContainer = sceneNode;
         if (palette.IsDesiredVisible || !this.PartsSupported)
         {
             return;
         }
         palette.IsDesiredVisible = true;
     }
 }
Esempio n. 2
0
 private void OnViewUpdated(SceneUpdatePhaseEventArgs args)
 {
     if (this.view != null && this.Document != null && this.Document.IsEditable)
     {
         ISupportsResources resourcesCollection = ResourceNodeHelper.GetResourcesCollection(this.Document.RootNode);
         if (resourcesCollection != null)
         {
             DocumentNode node = (DocumentNode)resourcesCollection.Resources;
             if (node != null)
             {
                 this.resourceSubscription.SetBasisNodes(this.ViewModel, (IEnumerable <SceneNode>) new List <SceneNode>()
                 {
                     this.ViewModel.GetSceneNode(node)
                 });
                 this.resourceSubscription.Update(this.ViewModel, args.DocumentChanges, args.DocumentChangeStamp);
             }
         }
     }
     else
     {
         this.needsRebuild = true;
         this.resourceSubscription.SetBasisNodes(this.ViewModel, (IEnumerable <SceneNode>) new List <SceneNode>());
     }
     if (!this.needsRebuild)
     {
         return;
     }
     this.OnItemsChanged();
 }
Esempio n. 3
0
        private void ViewModel_LateSceneUpdate(object target, SceneUpdatePhaseEventArgs args)
        {
            bool flag = false;

            if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.RecordMode))
            {
                this.OnPropertyChanged("IsRecording");
            }
            if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.ActiveTrigger | SceneViewModel.ViewStateBits.ActiveTimeline | SceneViewModel.ViewStateBits.ActiveStateContext))
            {
                this.OnPropertyChanged("CanRecord");
                flag = true;
            }
            else if (args.DocumentChanges != null && args.DocumentChanges.Count > 0)
            {
                foreach (DocumentNodeChange documentNodeChange in args.DocumentChanges.DistinctChanges)
                {
                    if (documentNodeChange.IsPropertyChange && documentNodeChange.PropertyKey.Name == "Name" || documentNodeChange.ParentNode != null && (documentNodeChange.ParentNode.Type.Name == "Trigger" || documentNodeChange.ParentNode.Type.Name.Contains("Condition")))
                    {
                        flag = true;
                        break;
                    }
                }
            }
            if (!flag)
            {
                return;
            }
            this.previousRecordTargetDescription = (RecordTargetDescriptionBase)null;
            this.OnPropertyChanged("RecordTargetDescription");
        }
Esempio n. 4
0
        private void UpdateLate()
        {
            this.scheduleCount = 0;
            PerformanceUtility.StartPerformanceSequence(PerformanceEvent.SceneViewUpdateScheduleTaskUpdateLate);
            SceneUpdatePhaseEventArgs args1 = (SceneUpdatePhaseEventArgs)null;

            SceneUpdatePhaseEventArgs[] updatePhaseEventArgsArray = Enumerable.ToArray <SceneUpdatePhaseEventArgs>((IEnumerable <SceneUpdatePhaseEventArgs>) this.workItems.Values);
            this.workItems.Clear();
            foreach (SceneUpdatePhaseEventArgs args2 in updatePhaseEventArgsArray)
            {
                if (args2.ViewModel.IsActiveSceneViewModel)
                {
                    args1 = args2;
                }
                args2.ViewModel.FireLateSceneUpdatePhase(args2);
            }
            if (args1 != null)
            {
                args1.ViewModel.DesignerContext.SelectionManager.FireLateActiveSceneUpdatePhase(args1);
            }
            foreach (SceneUpdatePhaseEventArgs updatePhaseEventArgs in updatePhaseEventArgsArray)
            {
                updatePhaseEventArgs.ViewModel.OnPipelineLatePhaseEnd();
            }
            if (args1 != null)
            {
                args1.ViewModel.DesignerContext.SelectionManager.FirePostSceneUpdatePhase();
            }
            PerformanceUtility.EndPerformanceSequence(PerformanceEvent.SceneViewUpdateScheduleTaskUpdateLate);
        }
Esempio n. 5
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (args.IsRadicalChange || args.IsDirtyViewState(SceneViewModel.ViewStateBits.IsEditable))
     {
         this.OnActiveViewChanged();
     }
     if (this.ActiveSceneViewModel == null)
     {
         return;
     }
     if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.ElementSelection))
     {
         SceneElement primarySelection = this.ActiveSceneViewModel.ElementSelectionSet.PrimarySelection;
         if (primarySelection != null)
         {
             TimelineItem timelineItem = this.TimelineItemManager.FindTimelineItem((SceneNode)primarySelection);
             if (timelineItem != null)
             {
                 this.ElementTree.ScrollIntoView((object)timelineItem);
             }
         }
     }
     if (!args.IsDirtyPipelineCalcState(SceneViewModel.PipelineCalcBits.TimelineSortZOrder))
     {
         return;
     }
     this.OnTimelineSortByZOrderChanged();
 }
Esempio n. 6
0
 private void InvalidateAdornersOnDocumentChange(SceneUpdatePhaseEventArgs args)
 {
     if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.CurrentValues))
     {
         this.ForceAdornerUpdate();
     }
     else
     {
         using (IEnumerator <DocumentNodeChange> enumerator = args.DocumentChanges.DistinctChanges.GetEnumerator())
         {
             while (enumerator.MoveNext())
             {
                 DocumentNodeChange change = enumerator.Current;
                 this.modelService.OnModelChanged(change);
                 if (SceneView.HandleAnimationChanges(this.viewModel, change, (SceneView.HandleAnimationChange)((sceneElement, propertyReference) => this.InvalidateModelItemAdorner((SceneNode)sceneElement, (IProperty)propertyReference.LastStep, change))) == SceneView.AnimationChangeResult.InvalidateAll)
                 {
                     this.ForceAdornerUpdate();
                     break;
                 }
                 if (change.ParentNode != null)
                 {
                     this.InvalidateModelItemAdorner(this.viewModel.GetSceneNode((DocumentNode)change.ParentNode), change.PropertyKey, change);
                 }
             }
         }
     }
 }
Esempio n. 7
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!this.IsEnabled)
     {
         this.UpdatePartsFromMetadata();
         this.UpdateBasisNode();
         this.UpdateUIStatus();
     }
     else
     {
         this.changedObjectTreeElements = false;
         if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.ActiveEditingContainer))
         {
             this.UpdatePartsFromMetadata();
             this.UpdateBasisNode();
         }
         else
         {
             if (args.DocumentChanges.Count <= 0)
             {
                 return;
             }
             this.elementSubscription.Update(args.ViewModel, args.DocumentChanges, args.DocumentChangeStamp);
         }
         foreach (PartsModel.PartsGroup partsGroup in this.parts.Values)
         {
             partsGroup.ResetClearSuppression();
         }
         if (this.changedObjectTreeElements)
         {
             this.viewModel.TimelineItemManager.UpdateItems();
         }
         this.UpdateUIStatus();
     }
 }
 private void ViewModel_LateSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (this.containingToolTip.IsOpen)
     {
         this.containingToolTip.IsOpen = false;
     }
     this.viewModel.LateSceneUpdatePhase -= new SceneUpdatePhaseEventHandler(this.ViewModel_LateSceneUpdatePhase);
 }
Esempio n. 9
0
 private void ViewModel_LateSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (this.subscription == null)
     {
         return;
     }
     this.subscription.Update(args.ViewModel, args.DocumentChanges, args.DocumentChangeStamp);
 }
Esempio n. 10
0
 private void ViewModel_LateSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (args.DocumentChanges.Count <= 0)
     {
         return;
     }
     this.RebuildTree();
 }
Esempio n. 11
0
 private void OnSelectionManagerLateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (this.CanExecuteChanged == null || !args.IsDirtyViewState(SceneViewModel.ViewStateBits.IsEditable | SceneViewModel.ViewStateBits.ActiveTrigger | SceneViewModel.ViewStateBits.ActiveTimeline | SceneViewModel.ViewStateBits.ElementSelection | SceneViewModel.ViewStateBits.TextSelection | SceneViewModel.ViewStateBits.KeyFrameSelection | SceneViewModel.ViewStateBits.AnimationSelection | SceneViewModel.ViewStateBits.StoryboardSelection | SceneViewModel.ViewStateBits.CurrentValues | SceneViewModel.ViewStateBits.ChildPropertySelection | SceneViewModel.ViewStateBits.BehaviorSelection))
     {
         return;
     }
     this.CanExecuteChanged((object)this, EventArgs.Empty);
 }
Esempio n. 12
0
 private void SelectionManager_EarlyActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!args.IsDirtyViewState(SceneViewModel.ViewStateBits.ActiveEditingContainer) && !args.IsDirtyViewState(SceneViewModel.ViewStateBits.IsEditable))
     {
         return;
     }
     this.UpdateNoneTrigger();
 }
Esempio n. 13
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!args.IsDirtyViewState(SceneViewModel.ViewStateBits.IsEditable | SceneViewModel.ViewStateBits.ElementSelection | SceneViewModel.ViewStateBits.ActiveSceneInsertionPoint | SceneViewModel.ViewStateBits.LockedInsertionPoint))
     {
         return;
     }
     this.RevalidateToolEnabledState();
 }
Esempio n. 14
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!this.IsPaneEnabled)
     {
         return;
     }
     this.activeDocumentWrapper.Update(this.designerContext.ActiveSceneViewModel);
 }
Esempio n. 15
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (args.IsRadicalChange || args.IsDirtyViewState(SceneViewModel.ViewStateBits.IsEditable | SceneViewModel.ViewStateBits.ElementSelection))
     {
         this.UpdateModel();
     }
     this.eventSubscription.Update(args.ViewModel, args.DocumentChanges, args.DocumentChangeStamp);
 }
Esempio n. 16
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (args.Document != null && args.Document.HasOpenTransaction || !args.IsRadicalChange && !args.SceneSwitched && !this.assetLibrary.NeedsUpdate)
     {
         return;
     }
     this.BeginInvokeUpdateMruValidState();
 }
 private void SelectionManager_EarlyActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!this.SelectionSetChanged(args))
     {
         return;
     }
     this.OnSetChanged();
 }
Esempio n. 18
0
 private void ActiveSceneViewModel_EarlySceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!args.IsDirtyViewState(SceneViewModel.ViewStateBits.ElementSelection) || this.action != null || (this.EditingElement == null || this.ActiveDocument == null) || this.EditingElement.IsAttached && this.ActiveSceneViewModel.ElementSelectionSet != null && this.ActiveSceneViewModel.ElementSelectionSet.IsSelected((SceneElement)this.EditingElement))
     {
         return;
     }
     this.OnDetach();
     this.OnAttach();
 }
Esempio n. 19
0
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (this.Document == null || this.Document.HasOpenTransaction)
     {
         return;
     }
     this.isViewRepresentationValid = new bool?();
     this.OnPropertyChanged("IsViewRepresentationValid");
 }
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     this.DesignerContext.ResourceManager.OnSceneUpdate(args);
     if (!this.SelectionSetChanged(args) && (int)this.DesignerContext.ResourceManager.ResourceChangeStamp == (int)this.documentResourcesChangeStamp)
     {
         return;
     }
     this.InvalidateLocalResourcesCache();
 }
Esempio n. 21
0
 protected override void OnEarlySceneUpdatePhase(SceneUpdatePhaseEventArgs args)
 {
     base.OnEarlySceneUpdatePhase(args);
     if (this.activePathEditInformation == null || this.activePathEditInformation.ActivePathEditorTarget.EditingElement.ViewObject != null && this.ActiveView.ViewModel.ElementSelectionSet.IsSelected((SceneElement)this.activePathEditInformation.ActivePathEditorTarget.EditingElement))
     {
         return;
     }
     this.activePathEditInformation = (ActivePathEditInformation)null;
 }
Esempio n. 22
0
 internal void FireLateActiveSceneUpdatePhase(SceneUpdatePhaseEventArgs args)
 {
     if (this.LateActiveSceneUpdatePhase == null)
     {
         return;
     }
     args.Refresh(false, false);
     this.LateActiveSceneUpdatePhase((object)this, args);
 }
Esempio n. 23
0
 private void ViewModel_LateSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     foreach (DocumentNodeChange documentNodeChange in args.DocumentChanges.CollapsedChangeList)
     {
         if (documentNodeChange.ParentNode != null && (documentNodeChange.ParentNode.SceneNode is VisualStateGroupSceneNode || documentNodeChange.ParentNode.SceneNode is VisualStateSceneNode))
         {
             this.Rebuild();
             break;
         }
     }
 }
Esempio n. 24
0
 private void ViewModel_LateSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!this.textChangesApplied)
     {
         return;
     }
     if (this.editProxy != null)
     {
         this.editProxy.UpdateEditingElementLayout();
     }
     this.textChangesApplied = false;
 }
 private void SelectionManager_LateActiveSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (args.Document != null && args.Document.HasOpenTransaction)
     {
         return;
     }
     this.designerContext.ResourceManager.OnSceneUpdate(args);
     if ((int)this.resourceChangeStamp == (int)this.designerContext.ResourceManager.ResourceChangeStamp && !args.SceneSwitched)
     {
         return;
     }
     this.NeedsUpdate = true;
 }
Esempio n. 26
0
 private void OnViewModelEarlySceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (!this.initialized)
     {
         this.viewService.Initialize();
         this.initialized = true;
     }
     if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.ElementSelection))
     {
         this.UpdateSelection();
     }
     this.viewService.OnLayoutUpdated();
 }
 private void ViewModel_LateSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (args.IsRadicalChange || args.RootNodeChanged)
     {
         this.ProjectSubscription.OnCatastrophicUpdate();
     }
     else
     {
         if (args.Document == null)
         {
             return;
         }
         this.Update();
         List <SceneNode> list1 = (List <SceneNode>)null;
         List <SceneNode> list2 = (List <SceneNode>)null;
         foreach (SceneNodeSubscription <SceneNode, SceneNode> .BasisNodeInfo basisNodeInfo in this.subscription.BasisNodes)
         {
             SceneNode          sceneNode          = basisNodeInfo.Node;
             DocumentNodeMarker documentNodeMarker = this.subscription.BasisNodeList.MarkerAt(basisNodeInfo.Index);
             if (documentNodeMarker.IsDeleted && documentNodeMarker.Parent != null && (documentNodeMarker.Parent.Node != null && documentNodeMarker.Property != null))
             {
                 DocumentCompositeNode documentCompositeNode = documentNodeMarker.Parent.Node as DocumentCompositeNode;
                 if (documentCompositeNode != null)
                 {
                     DocumentNode node = documentCompositeNode.Properties[(IPropertyId)documentNodeMarker.Property];
                     if (node != null)
                     {
                         if (list1 == null)
                         {
                             list1 = new List <SceneNode>();
                             list2 = new List <SceneNode>();
                         }
                         list1.Add(this.viewModel.GetSceneNode(node));
                         list2.Add(sceneNode);
                     }
                 }
             }
         }
         this.subscription.Update(this.viewModel, args.DocumentChanges, args.DocumentChangeStamp);
         if (list1 != null)
         {
             for (int index = 0; index < list1.Count; ++index)
             {
                 this.ImmediateBasisNodes[list1[index]] = this.ImmediateBasisNodes[list2[index]];
                 this.ImmediateBasisNodes.Remove(list2[index]);
                 this.subscription.InsertBasisNode(list1[index]);
             }
         }
         this.ProjectSubscription.UpdateInternal();
     }
 }
 private void OnSelectionManagerEarlySceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if ((args.DirtyViewState & SceneViewModel.ViewStateBits.ElementSelection) == SceneViewModel.ViewStateBits.None)
     {
         return;
     }
     if (this.propertyEntry != null)
     {
         this.propertyEntry.PropertyReferenceChanged -= new Microsoft.Expression.DesignSurface.Documents.PropertyReferenceChangedEventHandler(this.OnTriggersCollectionChanged);
         this.propertyEntry.OnRemoveFromCategory();
         this.propertyEntry = (SceneNodeProperty)null;
     }
     this.ClearTriggerPropertiesList();
 }
Esempio n. 29
0
 private void ViewModel_EarlySceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (this.IsSuspended)
     {
         return;
     }
     if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.ElementSelection))
     {
         SceneElementSelectionSet elementSelectionSet = this.ActiveSceneViewModel.ElementSelectionSet;
         BaseFrameworkElement     frameworkElement    = (BaseFrameworkElement)null;
         if (elementSelectionSet != null && elementSelectionSet.PrimarySelection != null && TextEditProxyFactory.IsEditableElement(elementSelectionSet.PrimarySelection))
         {
             frameworkElement = elementSelectionSet.PrimarySelection as BaseFrameworkElement;
         }
         if (this.TextSource != frameworkElement)
         {
             this.PopSelfOrExitEditMode();
             return;
         }
     }
     if (this.editProxy == null)
     {
         return;
     }
     if (args.IsDirtyViewState(SceneViewModel.ViewStateBits.EntireScene))
     {
         foreach (DocumentNodeChange change in args.DocumentChanges.DistinctChanges)
         {
             if ((change.ParentNode == this.TextSource.DocumentNode || change.OldChildNode == this.TextSource.DocumentNode) && !this.editProxy.IsTextChange(change))
             {
                 this.PopSelfOrExitEditMode();
                 return;
             }
         }
     }
     foreach (DocumentNodeChange change in args.DocumentChanges.DistinctChanges)
     {
         if ((change.ParentNode == this.TextSource.DocumentNode || change.OldChildNode == this.TextSource.DocumentNode) && this.editProxy.IsTextChange(change))
         {
             this.editProxy.ApplyPropertyChange(change);
             this.textChangesApplied = true;
         }
     }
     if (!this.editProxy.TextSource.IsViewObjectValid)
     {
         return;
     }
     this.SetIsTextEditingProperty(this.editProxy.TextSource, true);
 }
Esempio n. 30
0
 private void ActiveSceneViewModel_LateSceneUpdatePhase(object sender, SceneUpdatePhaseEventArgs args)
 {
     if (args.DocumentChanges.Count <= 0)
     {
         return;
     }
     foreach (SceneChange sceneChange in SceneChange.Changes(args.DocumentChanges, args.ViewModel.RootNode, (Type)null))
     {
         PropertyReferenceSceneChange e = sceneChange as PropertyReferenceSceneChange;
         if (e != null)
         {
             this.OnPropertyReferenceSceneChange(e);
         }
     }
 }