public void Remove(SceneDocument document) { RelatedDocumentInfo relatedDocumentInfo = this[document]; this.documents.Remove(document); relatedDocumentInfo.Unregister(); }
private void OnEditTransactionUpdated(object sender, EventArgs e) { SceneDocument document = sender as SceneDocument; SceneView activeView = this.DesignerContext.ActiveView; ViewUpdateManager.RelatedDocumentTable relatedDocumentTable = (ViewUpdateManager.RelatedDocumentTable)null; if (activeView == null || activeView.IsClosing || (!this.relatedDocumentsForView.TryGetValue(activeView, out relatedDocumentTable) || !relatedDocumentTable.Contains(document))) { return; } RelatedDocumentInfo documentInfo = relatedDocumentTable[document]; activeView.UpdateFromRelatedDocument(document, documentInfo, true, false); activeView.UpdateReferences(); }
internal void UpdateRelatedViews(SceneDocument sceneDocument, bool majorChange) { List <SceneView> list; if (sceneDocument == null || !this.relatedViewsForDocument.TryGetValue(sceneDocument, out list)) { return; } HashSet <SceneView> views = new HashSet <SceneView>(); foreach (SceneView view in list) { if (!view.IsClosing) { this.CollectRelatedViewsRecursively(view, views); RelatedDocumentInfo documentInfo = this.relatedDocumentsForView[view][sceneDocument]; view.UpdateFromRelatedDocument(sceneDocument, documentInfo, true, majorChange); } } this.UpdateReferences((ICollection <SceneView>)views); }
public void Add(SceneDocument document) { RelatedDocumentInfo relatedDocumentInfo = new RelatedDocumentInfo(document); this.documents.Add(document, relatedDocumentInfo); }