public void OnDocumentSelectionChanged(object sender, EventArgs e) { if (sender != null) { ModelingDocView view = sender as ModelingDocView; if (view != null) { ICollection selection = view.GetSelectedComponents(); if (selection.Count == 1) { IEnumerator enumerator = selection.GetEnumerator(); enumerator.MoveNext(); ClassShape shape = enumerator.Current as ClassShape; if (shape != null) { ModelClass modelClass = shape.ModelElement as ModelClass; if (modelClass != null) { control.Display(modelClass); return; } } ModelProperty property = enumerator.Current as ModelProperty; if (property != null) { control.Display(property.ModelClass); return; } } } control.Clear(); } }
/// <summary> /// Gets the selected elements. /// </summary> /// <param name="provider">The provider.</param> /// <returns></returns> public static IList <object> GetSelectedElements(IServiceProvider provider) { ModelingDocView docView = DesignerHelper.GetModelingDocView(provider); if (docView != null) { if (docView.SelectionCount > 0) { IList <object> elements = new List <object>(docView.SelectionCount); foreach (object component in docView.GetSelectedComponents()) { ShapeElement selectedShape = component as ShapeElement; ModelElement selectedElement = component as ModelElement; if (selectedShape != null) { elements.Add(selectedShape.ModelElement); } else if (selectedElement != null) { elements.Add(selectedElement); } } return(elements); } } return(null); }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { if (newView != null && oldView == null) { //The view is being loaded newView.SelectionChanged += new EventHandler(newView_SelectionChanged); var docData = newView.DocData as nHydrateDocData; if (docData == null) return; if (docData.ModelExplorerToolWindow != null) docData.ModelExplorerToolWindow.SelectionChanged += new EventHandler(ModelExplorerToolWindow_SelectionChanged); } else if (newView == null && oldView != null) { //The view is being loaded oldView.SelectionChanged -= new EventHandler(newView_SelectionChanged); var docData = oldView.DocData as nHydrateDocData; if (docData == null) return; if (docData.ModelExplorerToolWindow != null) docData.ModelExplorerToolWindow.SelectionChanged -= new EventHandler(ModelExplorerToolWindow_SelectionChanged); } _docControl.SetupObjects(_model, _diagram, _docView); base.OnDocumentWindowChanged(oldView, newView); }
/// <summary> /// Lors de la fermeture de la vue principale, on s'assure que toutes les autres seront bien fermèes /// </summary> protected override void OnClose() { // Pattern pour supprimer un item dans un iterateur for (;;) { ModelingDocView viewToClose = null; foreach (ModelingDocView view in DocData.DocViews) { if (view != this) { viewToClose = view; break; } } // Si il n'y a rien à supprimer, on s'arrete if (viewToClose == null) { break; } viewToClose.Frame.CloseFrame(0); } base.OnClose(); }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { PanZoomPanel panel = this.Window as PanZoomPanel; if (panel != null) { // detach from previous document view if (m_currentDocView != null) { UnsubscribeFromEvents(m_currentDocView); m_currentDocView = null; } DiagramDocView docView = newView as DiagramDocView; if (docView != null && docView.CurrentDesigner != null) { // attach to the new document view SubscribeToEvents(docView); m_currentDocView = docView; // make sure thumbnail image is updated panel.InvalidateImage(docView.CurrentDesigner.DiagramClientView); } else { // document is not recognized - erase the image panel.InvalidateImage(null); } } }
/// <summary> /// Gets the selected element. /// </summary> /// <param name="provider">The provider.</param> /// <returns></returns> public static ModelElement GetSelectedElement(IServiceProvider provider) { ModelingDocView docView = DesignerHelper.GetModelingDocView(provider); if (docView != null) { if (docView.SelectionCount == 1) { foreach (object component in docView.GetSelectedComponents()) { ShapeElement selectionShape = component as ShapeElement; ModelElement selectionElement = component as ModelElement; if (selectionShape != null) { return(selectionShape.ModelElement); } else if (selectionElement != null) { return(selectionElement); } } } } return(null); }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { base.OnDocumentWindowChanged(oldView, newView); ModelingDocData data1 = (oldView != null) ? oldView.DocData : null; if ((data1 != null) && data1 is ActiveWriterDocData) { oldView.SelectionChanged -= new EventHandler(this.OnDocumentSelectionChanged); Model model = (Model)data1.RootElement; model.ModelPropertyAdded -= new ModelPropertyAddedHandler(this.OnModelPropertyAdded); model.ModelPropertyDeleted -= new ModelPropertyDeletedHandler(this.OnModelPropertyDeleted); model.ModelPropertyChanged -= new ModelPropertyChangedHandler(this.OnModelPropertyChanged); } ModelingDocData data2 = (newView != null) ? newView.DocData : null; if ((data2 != null) && data2 is ActiveWriterDocData) { newView.SelectionChanged += new EventHandler(this.OnDocumentSelectionChanged); Model model = (Model)data2.RootElement; model.ModelPropertyAdded += new ModelPropertyAddedHandler(this.OnModelPropertyAdded); model.ModelPropertyDeleted += new ModelPropertyDeletedHandler(this.OnModelPropertyDeleted); model.ModelPropertyChanged += new ModelPropertyChangedHandler(this.OnModelPropertyChanged); } OnDocumentSelectionChanged(data2, EventArgs.Empty); }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { base.OnDocumentWindowChanged(oldView, newView); ModelingDocData data1 = (oldView != null) ? oldView.DocData : null; if ((data1 != null) && data1 is ActiveWriterDocData) { oldView.SelectionChanged -= OnDocumentSelectionChanged; Model model = (Model)data1.RootElement; model.ModelPropertyAdded -= OnModelPropertyAdded; model.ModelPropertyDeleted -= OnModelPropertyDeleted; model.ModelPropertyChanged -= OnModelPropertyChanged; } ModelingDocData data2 = (newView != null) ? newView.DocData : null; if ((data2 != null) && data2 is ActiveWriterDocData) { newView.SelectionChanged += OnDocumentSelectionChanged; Model model = (Model)data2.RootElement; model.ModelPropertyAdded += OnModelPropertyAdded; model.ModelPropertyDeleted += OnModelPropertyDeleted; model.ModelPropertyChanged += OnModelPropertyChanged; } OnDocumentSelectionChanged(data2, EventArgs.Empty); }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { base.OnDocumentWindowChanged(oldView, newView); if (newView == null) { this.HideWindow(); } else if (newView is MVCVisualDesignerDocView) { ShowViewModel((VDView)(newView.DocData.RootElement)); } }
/// <summary> /// Execute the command /// </summary> public void Exec() { Guid logicalViewGuid = new Guid(LogicalViewID.ProjectSpecificEditor); ModelElementLocator locator = new ModelElementLocator((IServiceProvider)Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(Microsoft.VisualStudio.OLE.Interop.IObjectWithSite))); ModelingDocView view = locator.FindDocView(logicalViewGuid, this._diagram); ModelingDocData docdata = view.DocData as ModelingDocData; if (docdata != null && docdata.FileName != null) { // Guid du DataLayerEditorFactory Guid guid1 = new Guid("56AF6F2B-EF94-4297-9857-8653A0AE02D8"); ServiceLocator.Instance.IDEHelper.OpenModelsDiagram(docdata.FileName, guid1); } }
/// <summary> /// Ouverture du diagramme dédié /// </summary> /// <param name="e">The diagram point event arguments.</param> public override void OnDoubleClick(DiagramPointEventArgs e) { base.OnDoubleClick(e); // TODO dans un helper Guid logicalViewGuid = new Guid(LogicalViewID.ProjectSpecificEditor); ModelElementLocator locator = new ModelElementLocator( (IServiceProvider)Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(IObjectWithSite))); ModelingDocView view = locator.FindDocView(logicalViewGuid, Diagram); ModelingDocData docdata = view.DocData; if (docdata != null) { OpenDiagram(docdata.FileName); } }
/// <summary> /// Notifies derived classes if a change is made in the Document Window. /// </summary> /// <param name="oldView">The view for the Document Window in the previous frame.</param> /// <param name="newView">The view for the Document Window in the current frame.</param> protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { base.OnDocumentWindowChanged(oldView, newView); if (((newView != null) && (newView.DocData != null))) { Store store = newView.DocData.Store; IList <SoftwareComponent> list = store.ElementDirectory.FindElements <SoftwareComponent>(true); if (list.Count > 0) { //this.Form.Populate(list[0]); Form.Show(); } return; } SetSelection(null); }
/// <summary> /// Execute the command /// </summary> public void Exec() { ModelElementLocator locator = new ModelElementLocator(_serviceProvider); ModelingDocView view = locator.FindDocView(Guid.Empty, _diagram); if (view != null) { System.Windows.Forms.FolderBrowserDialog ofd = new System.Windows.Forms.FolderBrowserDialog(); ofd.ShowNewFolderButton = true; if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK) { string fileName = view.DocData.FileName; DiagramExporter exporter = new DiagramExporter(_serviceProvider); exporter.ExportErrorEvent += exporter_ExportErrorEvent; exporter.ExportDiagram(fileName, ofd.SelectedPath, System.Drawing.Imaging.ImageFormat.Png, true); exporter.ExportErrorEvent -= exporter_ExportErrorEvent; } } }
private static void SelectShape(ShapeElement shapeElement, DocData docData) { // Validation if (shapeElement == null) { throw new ArgumentNullException("shapeElement"); } if (docData == null) { throw new ArgumentNullException("docData"); } ModelingDocView docView = docData.DocViews[0]; if (docView != null) { docView.SelectObjects(1, new object[] { shapeElement }, 0); } }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { if (newView != null && oldView == null) { //The view is being loaded newView.SelectionChanged += new EventHandler(newView_SelectionChanged); var docData = newView.DocData as nHydrateDocData; if (docData == null) { return; } if (docData.ModelExplorerToolWindow != null) { docData.ModelExplorerToolWindow.SelectionChanged += new EventHandler(ModelExplorerToolWindow_SelectionChanged); } } else if (newView == null && oldView != null) { //The view is being loaded oldView.SelectionChanged -= new EventHandler(newView_SelectionChanged); var docData = oldView.DocData as nHydrateDocData; if (docData == null) { return; } if (docData.ModelExplorerToolWindow != null) { docData.ModelExplorerToolWindow.SelectionChanged -= new EventHandler(ModelExplorerToolWindow_SelectionChanged); } } _docControl.SetupObjects(_model, _diagram, _docView); base.OnDocumentWindowChanged(oldView, newView); }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { if (newView == null && oldView != null) { //The model is being unloaded var m = oldView.DocData.RootElement as nHydrate.Dsl.nHydrateModel; if (m == null) return; _loadedModels.Remove(m.Id); oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.nHydrateModel)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ModelChanged)); #region Entity oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region View oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Stored Procedure oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Function oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion return; } //When the old view is null this is the first time. Only load the first time if (newView == null) return; //Reload model if necessary _model = newView.DocData.RootElement as nHydrate.Dsl.nHydrateModel; if (_model == null) return; _diagram = ((Microsoft.VisualStudio.Modeling.Shell.SingleDiagramDocView)newView).CurrentDesigner.DocView; _docView = newView.DocData; //This model is already hooked if (!_loadedModels.Contains(_model.Id)) { _loadedModels.Add(_model.Id); newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.nHydrateModel)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ModelChanged)); #region Entity newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region View newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Stored Procedure newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Function newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler<Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion } _findControl.SetupObjects(_model, _diagram, _docView); base.OnDocumentWindowChanged(oldView, newView); }
/// <summary> /// Fired when the current document changes. /// </summary> /// <param name="oldView">Previous DocData</param> /// <param name="newView">Current DocData</param> protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { var newModelingData = newView != null ? newView.DocData : null; if (newModelingData != null && IsDocumentSupported(newModelingData)) { var store = newModelingData.Store; if (store != null) { if (_currentDocData != null) { // if we're switching stores, make sure we clear the tree. Prevents store disposed exceptions if // the currentDocData.Store is disposed before we switch back to it. if (newModelingData.Store != _currentDocData.Store) { // clear tree data, causes event handlers to be removed from our branches. if (_treeProvider != null) { _treeProvider.Root = null; } // clear cached selection _currentSelection = null; _currentBrowseObject = null; } // disable column event handlers _treeControl.RemoveColumnEventHandlers(); // unsubscribe from document closing event _currentDocData.DocumentClosing -= OnDocumentClosing; } // enable column event handlers _treeControl.AddColumnEventHandlers(); // subscribe to document closing event newModelingData.DocumentClosing += OnDocumentClosing; // cache the doc data, so we can unsubscribe properly. We cannot // unsubscribe using oldView.DocData, because we may get an OnDocumentWindowChanged(oldModelingData, null) // just prior to a document close. In that case, we'd unsubscribe too early, and not clean up properly // in OnDocumentClosed. Instead we wait until either we get a new supported document, or the old one closes. _currentDocData = newModelingData; } } else { // it's possible that the oldView is not some docData we support, in that case, don't do anything var oldModelingData = oldView != null ? oldView.DocData : null; if (oldModelingData != null && IsDocumentSupported(oldModelingData)) { // Null or unsupported view, clear our selection context. Note that we leave the tree populated // here so that in the common case of switching back and forth between designer and code, we // don't lose selection/expansion state in the tree. We also clear/save the selection context, // because we don't want to push anything to the property browser while the watermark is showing. _currentBrowseObject = PrimarySelection; SetSelectedComponents(new object[] { }); if (_containerControl != null) { _containerControl.WatermarkVisible = true; } } } }
protected override void OnDocumentWindowChanged(ModelingDocView oldView, ModelingDocView newView) { if (newView == null && oldView != null) { //The model is being unloaded var m = oldView.DocData.RootElement as nHydrate.Dsl.nHydrateModel; if (m == null) { return; } _loadedModels.Remove(m.Id); oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.nHydrateModel)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ModelChanged)); #region Entity oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region View oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Stored Procedure oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Function oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter oldView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); oldView.DocData.Store.EventManagerDirectory.ElementAdded.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); oldView.DocData.Store.EventManagerDirectory.ElementDeleted.Remove( oldView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion return; } //When the old view is null this is the first time. Only load the first time if (newView == null) { return; } //Reload model if necessary _model = newView.DocData.RootElement as nHydrate.Dsl.nHydrateModel; if (_model == null) { return; } _diagram = ((Microsoft.VisualStudio.Modeling.Shell.SingleDiagramDocView)newView).CurrentDesigner.DocView; _docView = newView.DocData; //This model is already hooked if (!_loadedModels.Contains(_model.Id)) { _loadedModels.Add(_model.Id); newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.nHydrateModel)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ModelChanged)); #region Entity newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Entity)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Field)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region View newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.View)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.ViewField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Stored Procedure newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedure)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.StoredProcedureParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion #region Function newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.Function)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #region Field newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionField)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #region Parameter newView.DocData.Store.EventManagerDirectory.ElementPropertyChanged.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementPropertyChangedEventArgs>(ElementChanged)); newView.DocData.Store.EventManagerDirectory.ElementAdded.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementAddedEventArgs>(ElementAddHandler)); newView.DocData.Store.EventManagerDirectory.ElementDeleted.Add( newView.DocData.Store.DomainDataDirectory.FindDomainClass(typeof(nHydrate.Dsl.FunctionParameter)), new EventHandler <Microsoft.VisualStudio.Modeling.ElementDeletedEventArgs>(ElementDeleteHandler)); #endregion #endregion } _findControl.SetupObjects(_model, _diagram, _docView); base.OnDocumentWindowChanged(oldView, newView); }