public static bool IsDiagramGenerated(DiagramClass diagramClass) { if (diagramClass is SpecificElementsDiagram) { if ((diagramClass as SpecificElementsDiagram).DomainClasses.Count == 0) { return(false); } } else if (diagramClass is ModalDiagram) { if ((diagramClass as ModalDiagram).DomainClass == null) { return(false); } } else if (diagramClass is SpecificDependencyDiagram) { if ((diagramClass as SpecificDependencyDiagram).DomainClass == null) { return(false); } } return(true); }
/// <summary> /// Constructor. This view model constructed with 'bHookUpEvents=true' does react on model changes. /// </summary> /// <param name="viewModelStore">The store this view model belongs to.</param> /// <param name="element">Element represented by this view model.</param> public ImportedDiagramClassViewModel(ViewModelStore viewModelStore, DiagramClass element, DesignerDiagramClass diagramClass) : base(viewModelStore, element, true) { this.diagramClass = diagramClass; this.linkId = GetHostedElement().Id; this.IsLocked = false; }
/// <summary> /// Constructor. This view model constructed with 'bHookUpEvents=true' does react on model changes. /// </summary> /// <param name="viewModelStore">The store this view model belongs to.</param> /// <param name="element">Element represented by this view model.</param> public IncludedDiagramClassViewModel(ViewModelStore viewModelStore, DiagramClass element, DesignerDiagramClass diagramClass) : base(viewModelStore, element, true) { this.diagramClass = diagramClass; this.linkId = GetHostedElement().Id; this.IsLocked = false; }
public static MappingRelationshipShapeClass CreateMappingRelationshipShapeClass(DiagramClass diagramClass) { MappingRelationshipShapeClass shapeClass = diagramClass.Store.ElementFactory.CreateElement(MappingRelationshipShapeClass.DomainClassId) as MappingRelationshipShapeClass; Microsoft.VisualStudio.Modeling.ElementOperations elementOperations = new Microsoft.VisualStudio.Modeling.ElementOperations(diagramClass.Store as IServiceProvider, diagramClass.Store.DefaultPartition); Microsoft.VisualStudio.Modeling.ElementGroup elementGroup = new Microsoft.VisualStudio.Modeling.ElementGroup(diagramClass.Store.DefaultPartition); elementGroup.Add(shapeClass); elementGroup.MarkAsRoot(shapeClass); elementOperations.MergeElementGroup(diagramClass, elementGroup); shapeClass.Name = NameHelper.GetUniqueName(diagramClass.Store, MappingRelationshipShapeClass.DomainClassId); return shapeClass; }
public static ShapeClass CreateShapeClass(DiagramClass diagramClass) { ShapeClass shapeClass = diagramClass.Store.ElementFactory.CreateElement(ShapeClass.DomainClassId) as ShapeClass; Microsoft.VisualStudio.Modeling.ElementOperations elementOperations = new Microsoft.VisualStudio.Modeling.ElementOperations(diagramClass.Store as IServiceProvider, diagramClass.Store.DefaultPartition); Microsoft.VisualStudio.Modeling.ElementGroup elementGroup = new Microsoft.VisualStudio.Modeling.ElementGroup(diagramClass.Store.DefaultPartition); elementGroup.Add(shapeClass); elementGroup.MarkAsRoot(shapeClass); elementOperations.MergeElementGroup(diagramClass, elementGroup); shapeClass.Name = NameHelper.GetUniqueName(diagramClass.Store, ShapeClass.DomainClassId); return(shapeClass); }
public static bool IsDiagramGenerated(DiagramClass diagramClass) { if (diagramClass is SpecificElementsDiagram) { if ((diagramClass as SpecificElementsDiagram).DomainClasses.Count == 0) return false; } else if (diagramClass is ModalDiagram) { if ((diagramClass as ModalDiagram).DomainClass == null) return false; } else if (diagramClass is SpecificDependencyDiagram) { if ((diagramClass as SpecificDependencyDiagram).DomainClass == null) return false; } return true; }
/// <summary> /// Adds a new root view model for the given node. /// </summary> /// <param name="node">Node.</param> public void AddImportedDC(DiagramClass node) { if (node == null) { return; } // verify that node hasnt been added yet foreach (BaseModelElementViewModel viewModel in this.importedDCCVMs) { if (viewModel.Element.Id == node.Id) { return; } } ImportedDiagramClassViewModel vm = new ImportedDiagramClassViewModel(this.ViewModelStore, node, this.GetHostedElement() as DesignerDiagramClass); this.importedDCCVMs.Add(vm); OnPropertyChanged("HasImportedDCCItems"); }
public void GenerateDiagramItemViewModel(MetaModel dm, DiagramClass diagramClass) { #line default #line hidden #line 25 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("namespace "); #line default #line hidden #line 26 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 26 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(".ViewModel\r\n{\r\n"); #line default #line hidden #line 28 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" foreach (PresentationElementClass presentationElement in diagramClass.PresentationElements) { string baseClass = "DslEditorViewDiagrams::DiagramItemElementViewModel"; bool hasBaseClass = false; if (!(presentationElement is ShapeClass)) { continue; } else if (presentationElement is ShapeClass) { if ((presentationElement as ShapeClass).BaseShape != null) { baseClass = (presentationElement as ShapeClass).BaseShape.GetMetaModel().Namespace + ".ViewModel." + (presentationElement as ShapeClass).BaseShape.Name + "DiagramItemViewModel"; hasBaseClass = true; } } ShapeClass shapeClassElement = presentationElement as ShapeClass; bool canHaveNestedChildren = false; bool canHaveRelativeChildren = false; foreach (PresentationElementClass element in diagramClass.PresentationElements) { if (element is ShapeClass) { ShapeClass shapeClass = element as ShapeClass; DomainClass domainClass = shapeClass.DomainClass; if (domainClass == null) { continue; } if (shapeClass.Parent == presentationElement) { if (shapeClass.IsRelativeChild) { canHaveRelativeChildren = true; } else { canHaveNestedChildren = true; } } } } #line default #line hidden #line 70 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t/// <summary>\r\n /// View model for "); #line default #line hidden #line 72 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 72 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(".\r\n\t///\r\n\t/// Double-derived class to allow easier code customization.\r\n /// <" + "/summary>\r\n\tpublic partial class "); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("DiagramItemViewModel : "); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@"DiagramItemViewModelBase { #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""diagram"">The Diagram this item belongs to.</param> /// <param name=""shapeElement"">Model element, that is hosted by this view model.</param> public "); #line default #line hidden #line 85 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 85 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@"DiagramItemViewModel(DslEditorViewModelData::ViewModelStore viewModelStore, DslEditorViewDiagrams::DiagramSurfaceViewModel diagram, DslEditorDiagrams::NodeShape shapeElement) : base(viewModelStore, diagram, shapeElement) { } #endregion } /// <summary> /// View model for "); #line default #line hidden #line 93 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 93 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(".\r\n\t///\r\n\t/// This is the abstract base class.\r\n /// </summary>\r\n\tpublic parti" + "al class "); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("DiagramItemViewModelBase : "); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@" { #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""diagram"">The Diagram this item belongs to.</param> /// <param name=""shapeElement"">Model element, that is hosted by this view model.</param> protected "); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@"DiagramItemViewModelBase(DslEditorViewModelData::ViewModelStore viewModelStore, DslEditorViewDiagrams::DiagramSurfaceViewModel diagram, DslEditorDiagrams::NodeShape shapeElement) : base(viewModelStore, diagram, shapeElement) { } #endregion #region Methods /// <summary> /// Gets whether this view model can have nested children or not. /// </summary> public override bool CanHaveNestedChildren { get { "); #line default #line hidden #line 120 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" if (hasBaseClass) { #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\tif( base.CanHaveNestedChildren )\r\n\t\t\t\treturn true;\r\n\t\t\t\r\n"); #line default #line hidden #line 127 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } #line default #line hidden #line 129 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\t\treturn "); #line default #line hidden #line 130 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(canHaveNestedChildren.ToString().ToLower())); #line default #line hidden #line 130 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(";\r\n\t\t\t}\r\n\t\t}\r\n\r\n /// <summary>\r\n /// Gets whether this view model c" + "an have relative children or not.\r\n /// </summary>\r\n public overri" + "de bool CanHaveRelativeChildren\r\n\t\t{ \r\n\t\t\tget\r\n\t\t\t{\r\n"); #line default #line hidden #line 141 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" if (hasBaseClass) { #line default #line hidden #line 144 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\tif( base.CanHaveRelativeChildren )\r\n\t\t\t\treturn true;\r\n\t\t\t\r\n"); #line default #line hidden #line 148 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } #line default #line hidden #line 150 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\t\r\n\t\t\t\treturn "); #line default #line hidden #line 151 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(canHaveRelativeChildren.ToString().ToLower())); #line default #line hidden #line 151 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(";\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n #endregion\t\t\t\r\n\r\n"); #line default #line hidden #line 157 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" if (shapeClassElement.Parent == null) { #line default #line hidden #line 160 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@" #region Properties /// <summary> /// False if this item view model is directly hosted on the diagram surface and its shape can be deleted /// whithout the hosted model element beeing required to be deleted as well. True otherwise. /// </summary> /// <remarks> /// Items need to delete their hosted element if they are themselves not directly hosted /// on the diagram's surface. /// </remarks> public override bool AutomaticallyDeletesHostedElement { get { return false; } } #endregion "); #line default #line hidden #line 180 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } if (shapeClassElement.GeneratePropertiesVM) { this.PushIndent("\t\t"); this.Write(DiagramGeneratorHelper.Instance.CreatePropertyHandlers(presentationElement, (presentationElement as PresentationDomainClassElement).DomainClass, hasBaseClass)); this.PopIndent(); } #line default #line hidden #line 189 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t}\r\n\t\r\n"); #line default #line hidden #line 192 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } #line default #line hidden #line 194 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("}\r\n"); #line default #line hidden #line 196 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" }
/// <summary> /// Compares two diagram classes by comparing their names. /// </summary> /// <param name="x">DiagramClass to be compared.</param> /// <param name="y">DiagramClass to be compared.</param> /// <returns>Int from Compare.To</returns> private static int CompareDiagramClassesByName(DiagramClass x, DiagramClass y) { return x.Name.CompareTo(y.Name); }
public void GenerateDiagramLinkViewModel(MetaModel dm, DiagramClass diagramClass) { #line default #line hidden #line 25 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write("// "); #line default #line hidden #line 26 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 26 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write("\r\nnamespace "); #line default #line hidden #line 27 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 27 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(".ViewModel\r\n{\r\n"); #line default #line hidden #line 29 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" foreach (PresentationElementClass presentationElement in diagramClass.PresentationElements) { string baseClass = "DslEditorViewDiagrams::BaseDiagramItemLinkViewModel"; if ((presentationElement is ShapeClass)) { continue; } #line default #line hidden #line 39 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write("\t/// <summary>\r\n /// View model for "); #line default #line hidden #line 41 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 41 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(".\r\n\t///\r\n\t/// Double-derived class to allow easier code customization.\r\n /// <" + "/summary>\r\n\tpublic partial class "); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write("DiagramItemLinkViewModel : "); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(@"DiagramItemLinkViewModelBase { #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""diagram"">The Diagram this item belongs to.</param> /// <param name=""shapeElement"">Model element, that is hosted by this view model.</param> public "); #line default #line hidden #line 54 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 54 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(@"DiagramItemLinkViewModel(DslEditorViewModelData::ViewModelStore viewModelStore, DslEditorViewDiagrams::DiagramSurfaceViewModel diagram, DslEditorDiagrams::LinkShape shapeElement) : base(viewModelStore, diagram, shapeElement) { } #endregion } /// <summary> /// View model for "); #line default #line hidden #line 62 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 62 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(".\r\n\t///\r\n\t/// This is the abstract base class.\r\n /// </summary>\r\n\tpublic parti" + "al class "); #line default #line hidden #line 66 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 66 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write("DiagramItemLinkViewModelBase : "); #line default #line hidden #line 66 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 66 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(@" { #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""diagram"">The Diagram this item belongs to.</param> /// <param name=""shapeElement"">Model element, that is hosted by this view model.</param> protected "); #line default #line hidden #line 75 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 75 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write(@"DiagramItemLinkViewModelBase(DslEditorViewModelData::ViewModelStore viewModelStore, DslEditorViewDiagrams::DiagramSurfaceViewModel diagram, DslEditorDiagrams::LinkShape shapeElement) : base(viewModelStore, diagram, shapeElement) { } #endregion "); #line default #line hidden #line 81 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.PushIndent("\t\t"); if (presentationElement is PresentationDomainClassElement) { this.Write(DiagramGeneratorHelper.Instance.CreatePropertyHandlers(presentationElement, (presentationElement as PresentationDomainClassElement).DomainClass, false)); } else if (presentationElement is RelationshipShapeClass) { this.Write(DiagramGeneratorHelper.Instance.CreatePropertyHandlers(presentationElement, (presentationElement as RelationshipShapeClass).ReferenceRelationship, false)); } this.PopIndent(); #line default #line hidden #line 88 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write("\t\t\r\n\t}\r\n\t\r\n"); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" } #line default #line hidden #line 93 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" this.Write("\t\t\r\n}\r\n"); #line default #line hidden #line 95 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramLinkViewModelGenerator.tt" }
/// <summary> /// Constructor. This view model constructed with 'bHookUpEvents=true' does react on model changes. /// </summary> /// <param name="viewModelStore">The store this view model belongs to.</param> /// <param name="element">Element represented by this view model.</param> public DiagramClassSelectableViewModel(ViewModelStore viewModelStore, DiagramClass element) : base(viewModelStore, element) { this.diagramClass = element; }
public void GenerateDiagram(MetaModel dm, DiagramClass diagram) { string baseClass = "DslEditorDiagrams::Diagram"; if( diagram is DependencyDiagram ) { baseClass = "DslEditorDiagrams::GraphicalDependenciesDiagram"; } #line default #line hidden #line 30 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\r\nnamespace "); #line default #line hidden #line 32 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 32 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\r\n{\r\n\t/// <summary>\r\n /// "); #line default #line hidden #line 35 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 35 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(" class representing a Diagram.\r\n /// </summary>\r\n\t[DslModeling::DomainObjectId" + "(\""); #line default #line hidden #line 37 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Id.ToString("D"))); #line default #line hidden #line 37 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\")]\r\n\tpublic partial class "); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(" : "); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\r\n\t{\r\n\t\t#region Constructors, domain class Id\r\n\t\r\n\t\t/// <summary>\r\n\t\t/// VModellv" + "ariante domain class Id.\r\n\t\t/// </summary>\r\n\t\tpublic static readonly new global:" + ":System.Guid DomainClassId = new System.Guid(\""); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Id.ToString("D"))); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@"""); /// <summary> /// Constructor /// </summary> /// <param name=""store"">Store where new element is to be created.</param> /// <param name=""propertyAssignments"">List of domain property id/value pairs to set once the element is created.</param> public "); #line default #line hidden #line 51 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 51 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@"(DslModeling::Store store, params DslModeling::PropertyAssignment[] propertyAssignments) : this(store != null ? store.DefaultPartitionForClass(DomainClassId) : null, propertyAssignments) { } /// <summary> /// Constructor /// </summary> /// <param name=""partition"">Partition where new element is to be created.</param> /// <param name=""propertyAssignments"">List of domain property id/value pairs to set once the element is created.</param> public "); #line default #line hidden #line 61 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 61 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@"(DslModeling::Partition partition, params DslModeling::PropertyAssignment[] propertyAssignments) : base(partition, propertyAssignments) { } #endregion /// <summary> /// Gets the unique name of this diagram. /// </summary> public override string UniqueName { get { return """); #line default #line hidden #line 74 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 74 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 74 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\";\r\n\t\t\t}\r\n }\r\n\t\t\r\n /// <summary>\r\n /// Initialize.\r\n " + "/// </summary>\r\n public override void Initialize()\r\n {\r\n"); #line default #line hidden #line 83 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" if( diagram is DesignerDiagramClass ) { foreach(DiagramClass d in (diagram as DesignerDiagramClass).IncludedDiagramClasses ) { #line default #line hidden #line 88 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\t\t\tAddIncludedDiagram(new "); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Namespace)); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("."); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("(this.Store));\r\n"); #line default #line hidden #line 90 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } } #line default #line hidden #line 94 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(" }\r\n"); #line default #line hidden #line 96 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" if( CodeGenerationUtilities.NeedsLinkRules(dm) ) { #line default #line hidden #line 100 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@" /// <summary> /// Gets the relationship shapes factory helper. Needs to be derived in the actual instance class. /// </summary> /// <returns></returns> public override DslEditorDiagrams::ModelLinkAddRuleForRSShapes.RSShapesFactoryHelper GetRSShapesFactoryHelper() { return "); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("LinkForShapesAdded."); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("ElementForShapesFactoryHelper.Instance;\r\n }\r\n"); #line default #line hidden #line 110 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } if( CodeGenerationUtilities.NeedsMappingLinkRules(dm) ) { #line default #line hidden #line 114 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@" /// <summary> /// Gets the mapping relationship shapes factory helper. Needs to be derived in the actual instance class. /// </summary> /// <returns></returns> public override DslEditorDiagrams::ModelLinkAddRuleForMappingRSShapes.RSShapesFactoryHelper GetMappingRSShapesFactoryHelper() { return "); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("MappingLinkForShapesAdded."); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("ElementForShapesFactoryHelper.Instance;\r\n }\r\n"); #line default #line hidden #line 124 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } #line default #line hidden #line 126 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@" #region Methods /// <summary> /// Adds a proto element to the current element. /// </summary> /// <param name=""protoElement"">Proto element representation of the element that is to be added.</param> /// <param name=""groupMerger""> /// Group merger class used to track id mapping, merge errors/warnings and /// postprocess merging by rebuilding reference relationships. /// </param> /// <param name=""isRoot"">Root element?</param> public override void ModelMerge(DslEditorModeling::ModelProtoElement protoElement, DslEditorModeling::ModelProtoGroupMerger groupMerger, bool isRoot) { "); #line default #line hidden #line 140 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" if( !diagram.IsCustom ) { #line default #line hidden #line 143 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\t\t\t// TODO\t\t\t\r\n"); #line default #line hidden #line 145 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } #line default #line hidden #line 147 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\t\t}\r\n\t\t#endregion\r\n\t}\r\n}\r\n"); #line default #line hidden #line 152 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" }
private void GenerateDiagramViewModelInternal(MetaModel dm, DiagramClass diagramClass) { string baseClass = "DslEditorViewDiagrams::BaseDiagramSurfaceViewModel"; if( diagramClass is SpecificElementsDiagram) { if( (diagramClass as SpecificElementsDiagram).DomainClasses.Count == 0 ) return; baseClass = "DslEditorViewDiagrams.Templates.SpecificElementsDesignerSurfaceViewModel"; } else if( diagramClass is DesignerSurfaceDiagram) { baseClass = "DslEditorViewDiagrams.Templates.DesignerSurfaceViewModel"; } else if( diagramClass is ModalDiagram) { if( (diagramClass as ModalDiagram).DomainClass == null ) return; baseClass = "DslEditorViewDiagrams.Templates.ModalDesignerSurfaceViewModel"; } #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\r\nnamespace "); #line default #line hidden #line 40 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 40 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(".ViewModel\r\n{\r\n\t/// <summary>\r\n\t/// This class represents the default diagram sur" + "face view model of the "); #line default #line hidden #line 43 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.ApplicationName)); #line default #line hidden #line 43 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(".\r\n\t/// \r\n\t/// Double-derived class to allow easier code customization.\r\n\t/// </s" + "ummary>\r\n\tpublic partial class "); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceViewModel : "); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceViewModelBase\r\n\t{\r\n\t\t#region Constructor\r\n"); #line default #line hidden #line 50 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.PushIndent("\t\t"); CreateConstructor(dm, diagramClass, false); this.PopIndent(); #line default #line hidden #line 54 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\r\n\t\t#endregion\r\n\t}\r\n\t\r\n\t/// <summary>\r\n\t/// This class represents the default di" + "agram surface view model of the "); #line default #line hidden #line 59 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.ApplicationName)); #line default #line hidden #line 59 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(".\r\n\t/// \r\n\t/// This is the abstract base class.\r\n\t/// </summary>\r\n\tpublic abstrac" + "t partial class "); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceViewModelBase : "); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\r\n\t{\r\n\t\t#region Constructor\r\n"); #line default #line hidden #line 66 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.PushIndent("\t\t"); CreateConstructor(dm, diagramClass, true); this.PopIndent(); #line default #line hidden #line 70 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\r\n\t\t#endregion\t\t\r\n"); #line default #line hidden #line 72 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if( diagramClass is ModalDiagram) { ModalDiagram diagram = diagramClass as ModalDiagram; #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t#region ModalDiagram\r\n\t\t/// <summary>\r\n /// Unique name of the property " + "grid docking window.\r\n /// </summary>\r\n public override string Doc" + "kingPaneName\r\n {\r\n get { return \""); #line default #line hidden #line 83 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 83 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceDockWindowPane\" + this.NameExtension; }\r\n }\r\n\r\n /// <summary" + ">\r\n /// Title of the docking windo.\r\n /// </summary>\r\n publ" + "ic override string DockingPaneTitle\r\n {\r\n get { return \""); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Title)); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\" + this.TitleExtension; }\r\n }\t\t\r\n\t\t\r\n /// <summary>\r\n /// I" + "nitialization routine.\r\n /// </summary>\r\n protected override void " + "Initialize()\r\n {\r\n base.Initialize();\r\n\r\n"); #line default #line hidden #line 101 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if(diagram.DomainClass.GenerateSpecificViewModel ) { string dClass = diagram.DomainClass.GetMetaModel().Namespace + ".ViewModel." + diagram.DomainClass.Name + "SpecificViewModel"; #line default #line hidden #line 105 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\tthis.HostedElementVM = new "); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dClass)); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(this.ViewModelStore, (this.HostedElement as "); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.DomainClass.GetFullName(true))); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("));\r\n"); #line default #line hidden #line 107 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else { #line default #line hidden #line 111 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\tthis.HostedElementVM = new DslEditorViewModels::BaseModelElementViewModel(this" + ".ViewModelStore, this.HostedElement, true);\r\n"); #line default #line hidden #line 113 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" }\t\t\r\n\t\t#endregion\r\n"); #line default #line hidden #line 118 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if( diagramClass is SpecificElementsDiagram) { SpecificElementsDiagram diagram = diagramClass as SpecificElementsDiagram; #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@" #region SpecificElementsDiagram private SelectedElementEnum selectedElementEnum = SelectedElementEnum.___None___; /// <summary> /// Enumeration identifying the currently selected element type. /// </summary> public enum SelectedElementEnum { ___None___, "); #line default #line hidden #line 134 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" foreach(DomainClass d in diagram.DomainClasses) { #line default #line hidden #line 137 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t"); #line default #line hidden #line 138 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 138 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(",\r\n"); #line default #line hidden #line 139 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 141 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t}\r\n\t\t\r\n\t\t/// <summary>\r\n\t\t/// Gets the selected element type.\r\n\t\t/// </summary>" + "\r\n\t\tpublic SelectedElementEnum SelectedElementType\r\n\t\t{\r\n\t\t\tget\r\n\t\t\t{\r\n\t\t\t\tretur" + "n this.selectedElementEnum;\r\n\t\t\t}\r\n\t\t\tprivate set\r\n\t\t\t{\r\n\t\t\t\tif( this.selectedEl" + "ementEnum != value )\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.selectedElementEnum = value;\r\n\t\t\t\t\tOnProp" + "ertyChanged(\"SelectedElementType\");\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t/// <summary>\r\n " + " /// Called if the hosted element was deleted.\r\n /// </summary>\r\n " + " /// <param name=\"args\">Data</param>\r\n protected override void OnHosted" + "ElementDeleted(DslModeling::ElementDeletedEventArgs args)\r\n {\r\n " + " base.OnHostedElementDeleted(args);\r\n\t\t\t\r\n\t\t\tthis.SelectedElementType = Selecte" + "dElementEnum.___None___;\r\n }\r\n\t\t\r\n /// <summary>\r\n /// Call" + "back from SelectionChangedEvent.\r\n /// </summary>\r\n /// <param nam" + "e=\"eventArgs\">SelectionChangedEventArgs.</param>\r\n protected override voi" + "d ReactOnViewSelection(DslEditorEvents::SelectionChangedEventArgs eventArgs)\r\n " + " {\r\n\t\t\tbase.ReactOnViewSelection(eventArgs);\r\n\r\n\t\t\t// update selection\r\n " + " if (this.IsInitialized && this.IsDockingPaneVisible)\r\n\t\t\t\tDslEditorView" + "Models.Threading.DispatcherExtensions.InvokeAsynchronouslyInBackground(\r\n " + " System.Windows.Threading.Dispatcher.CurrentDispatcher, new System.Ac" + "tion(UpdateView));\r\n }\r\n\t\t\t\t\r\n /// <summary>\r\n /// Initiali" + "ze.\r\n /// </summary>\r\n protected override void Initialize()\r\n " + " {\r\n base.Initialize();\r\n\r\n if (this.SelectedItemsCollec" + "tion != null)\r\n\t\t\t\tDslEditorViewModels.Threading.DispatcherExtensions.InvokeAsyn" + "chronouslyInBackground(\r\n System.Windows.Threading.Dispatcher." + "CurrentDispatcher, new System.Action(UpdateView));\r\n }\r\n\t\t\r\n\t\t/// <summar" + "y>\r\n /// Updates the view based on the current selection.\r\n /// </" + "summary>\r\n\t\tprotected virtual void UpdateView()\r\n\t\t{\r\n\t\t\tif( this.SelectedItemsC" + "ollection.Count != 1 )\r\n\t\t\t\treturn;\r\n\t\t\t\t\r\n\t\t\tDslEditorModeling::DomainModelElem" + "ent element = this.SelectedItemsCollection[0] as DslEditorModeling::DomainModelE" + "lement;\r\n\t\t\tif( element != null )\r\n\t\t\t{\r\n"); #line default #line hidden #line 211 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" foreach(DomainClass d in diagram.DomainClasses) { #line default #line hidden #line 214 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\tif( element is "); #line default #line hidden #line 215 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.GetFullName(true))); #line default #line hidden #line 215 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" )\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.SelectedElementType = SelectedElementEnum."); #line default #line hidden #line 217 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 217 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(";\r\n"); #line default #line hidden #line 218 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if(d.GenerateSpecificViewModel ) { string dClass = d.GetMetaModel().Namespace + ".ViewModel." + d.Name + "SpecificViewModel"; #line default #line hidden #line 222 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\t\tif( HostedElement != null )\r\n\t\t\t\t\t\tif( HostedElement.Element.Id == element.I" + "d )\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\tHostedElement = new "); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dClass)); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(this.ViewModelStore, (element as "); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.GetFullName(true))); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("));\r\n"); #line default #line hidden #line 228 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else { #line default #line hidden #line 232 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\t\tHostedElement = new DslEditorViewModels::BaseModelElementViewModel(this.View" + "ModelStore, element, true);\r\n"); #line default #line hidden #line 234 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 236 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\t\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n"); #line default #line hidden #line 240 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 242 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@" } } /// <summary> /// Reset. /// </summary> protected override void Reset() { this.SelectedElementType = SelectedElementEnum.___None___; base.Reset(); } /// <summary> /// Visibility changed. /// </summary> /// <param name=""bVisible""></param> protected override void OnVisibilityChanged(bool bVisible) { base.OnVisibilityChanged(bVisible); if (this.IsDockingPaneVisible && this.IsInitialized) if (this.SelectedItemsCollection != null) DslEditorViewModels.Threading.DispatcherExtensions.InvokeAsynchronouslyInBackground( System.Windows.Threading.Dispatcher.CurrentDispatcher, new System.Action(UpdateView)); } #endregion "); #line default #line hidden #line 271 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if( diagramClass is DesignerSurfaceDiagram) { #line default #line hidden #line 275 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t#region DesignerSurfaceDiagram\r\n\t\t\r\n\t\t#endregion\r\n"); #line default #line hidden #line 279 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 281 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t#region IDockableViewModel\r\n"); #line default #line hidden #line 283 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if( !(diagramClass is ModalDiagram)) { #line default #line hidden #line 286 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" \t/// <summary>\r\n /// Unique name of the property grid docking window" + ".\r\n /// </summary>\r\n public override string DockingPaneName\r\n " + " {\r\n get { return \""); #line default #line hidden #line 292 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 292 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceDockWindowPane\"; }\r\n }\r\n\r\n /// <summary>\r\n /// Title " + "of the docking windo.\r\n /// </summary>\r\n public override string Do" + "ckingPaneTitle\r\n {\r\n get { return \""); #line default #line hidden #line 300 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Title)); #line default #line hidden #line 300 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\"; }\r\n }\r\n"); #line default #line hidden #line 302 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 304 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@" /// <summary> /// Gets the docking pane style. /// </summary> public override global::Tum.PDE.ToolFramework.Modeling.Visualization.ViewModel.DockingPaneStyle DockingPaneStyle { get { return global::Tum.PDE.ToolFramework.Modeling.Visualization.ViewModel.DockingPaneStyle.DockedInDocumentPane; } } #endregion } } "); #line default #line hidden #line 320 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" }
private void CreateConstructor(MetaModel dm, DiagramClass diagramClass, bool isBaseAbstractClass) { string accessor = "public"; string name = dm.Name + diagramClass.Name + "SurfaceViewModel"; if( isBaseAbstractClass ) { accessor = "protected"; name += "Base"; } if( diagramClass is ModalDiagram) { #line default #line hidden #line 336 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("/// <summary>\r\n/// Constuctor.\r\n/// </summary>\r\n/// <param name=\"viewModelStore\">" + "The store this view model belongs to.</param>\r\n/// <param name=\"element\">Element" + ".</param>\r\n"); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(DslEditorViewModels.Data.ViewModelStore viewModelStore, DslEditorModeling::Domai" + "nModelElement element)\r\n : base(viewModelStore, element)\r\n{\r\n\r\n}\r\n"); #line default #line hidden #line 347 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if( diagramClass is SpecificElementsDiagram) { #line default #line hidden #line 351 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("/// <summary>\r\n/// Constuctor.\r\n/// </summary>\r\n/// <param name=\"viewModelStore\">" + "The store this view model belongs to.</param>\r\n/// <param name=\"modelContext\">Mo" + "del context.</param>\r\n"); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@"(DslEditorViewModels.Data.ViewModelStore viewModelStore, DslEditorModeling::ModelContext modelContext) : base(viewModelStore, modelContext) { } /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""modelContextName"">Model context name.</param> "); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(DslEditorViewModels.Data.ViewModelStore viewModelStore, string modelContextName)" + "\r\n : base(viewModelStore, modelContextName)\r\n{\r\n}\r\n"); #line default #line hidden #line 371 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if( diagramClass is DesignerSurfaceDiagram) { #line default #line hidden #line 377 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } if( diagramClass is RestorableChildlessDiagram || diagramClass is RestorableTemplatedDiagramVMOnly) { #line default #line hidden #line 382 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("/// <summary>\r\n/// Constuctor.\r\n/// </summary>\r\n/// <param name=\"viewModelStore\">" + "The store this view model belongs to.</param>\r\n"); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(DslEditorViewModels.Data.ViewModelStore viewModelStore)\r\n : base(viewModelSto" + "re)\r\n{\r\n\r\n}\r\n"); #line default #line hidden #line 392 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } }
/// <summary> /// Adds a new root view model for the given node. /// </summary> /// <param name="node">Node.</param> public void AddImportedDC(DiagramClass node) { if (node == null) return; // verify that node hasnt been added yet foreach (BaseModelElementViewModel viewModel in this.importedDCCVMs) if (viewModel.Element.Id == node.Id) return; ImportedDiagramClassViewModel vm = new ImportedDiagramClassViewModel(this.ViewModelStore, node, this.GetHostedElement() as DesignerDiagramClass); this.importedDCCVMs.Add(vm); OnPropertyChanged("HasImportedDCCItems"); }
public void GenerateDiagramViewModel(MetaModel dm, DiagramClass diagramClass) { Dictionary<DomainClass, List<EmbeddingRelationship>> embeddingChildParentMapping = new Dictionary<DomainClass, List<EmbeddingRelationship>>(); foreach (PresentationElementClass element in diagramClass.PresentationElements) { if (element is ShapeClass) { ShapeClass shapeClass = element as ShapeClass; DomainClass domainClass = shapeClass.DomainClass; if( domainClass == null ) continue; if( !embeddingChildParentMapping.ContainsKey(domainClass) ) embeddingChildParentMapping.Add(domainClass, new List<EmbeddingRelationship>()); foreach(DomainRole rolesPlayed in domainClass.RolesPlayed) { if( rolesPlayed.Relationship.Target == rolesPlayed && rolesPlayed.Relationship is EmbeddingRelationship && rolesPlayed.Relationship.InheritanceModifier != InheritanceModifier.Abstract ) if( !embeddingChildParentMapping[domainClass].Contains(rolesPlayed.Relationship as EmbeddingRelationship) ) embeddingChildParentMapping[domainClass].Add(rolesPlayed.Relationship as EmbeddingRelationship); } } } string baseClass = "DslEditorViewDiagrams::DiagramSurfaceViewModel"; if( diagramClass.IsCustom ) baseClass = "DslEditorViewDiagrams::BaseDiagramSurfaceViewModel"; if( diagramClass is SpecificDependencyDiagram) { if( (diagramClass as SpecificDependencyDiagram).DomainClass == null ) return; baseClass = "DslEditorDependencies::SpecificDependenciesViewModel"; } else if( diagramClass is DependencyDiagram) { baseClass = "DslEditorDependencies::GraphicalDependenciesViewModel"; } if( diagramClass is SpecificDependencyDiagram ) { #line default #line hidden #line 85 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("namespace "); #line default #line hidden #line 86 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 86 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".ViewModel\r\n{\r\n\t/// <summary>\r\n\t/// This class represents the specific dependenci" + "es item for "); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".\r\n\t/// </summary>\r\n\tpublic partial class "); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@"ItemViewModel : DslEditorDependencies::SpecificDependenciesItemViewModel { /// <summary> /// Constructor. The view model constructed this way does not react on model changes, as such DoHookUpEvents is false. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""element"">Element represented by this view model.</param> public "); #line default #line hidden #line 98 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 98 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 98 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ItemViewModel(DslEditorViewModels.Data.ViewModelStore viewModelStore, DslModeling" + "::ModelElement element)\r\n : base(viewModelStore, element)\r\n {\r" + "\n\r\n }\r\n\t}\r\n}\r\n"); #line default #line hidden #line 105 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 107 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("namespace "); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".ViewModel\r\n{\r\n\t/// <summary>\r\n\t/// This class represents the default diagram sur" + "face view model of the "); #line default #line hidden #line 111 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.ApplicationName)); #line default #line hidden #line 111 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".\r\n\t/// \r\n\t/// Double-derived class to allow easier code customization.\r\n\t/// </s" + "ummary>\r\n\tpublic partial class "); #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModel : "); #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@"SurfaceViewModelBase { #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">View model store containing this view model.</param> /// <param name=""modelContext"">Model context.</param> public "); #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModel("); #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@"ViewModelStore viewModelStore, DslEditorModeling::ModelContext modelContext) : this(viewModelStore, null, modelContext) { } /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">View model store containing this view model.</param> /// <param name=""diagram"">Diagram.</param> /// <param name=""modelContext"">Model context.</param> public "); #line default #line hidden #line 134 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 134 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 134 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModel("); #line default #line hidden #line 134 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 134 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ViewModelStore viewModelStore, DslEditorDiagrams::Diagram diagram, DslEditorModel" + "ing::ModelContext modelContext)\r\n : base(viewModelStore, diagram, mod" + "elContext)\r\n {\r\n }\r\n\t\t\r\n"); #line default #line hidden #line 139 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( !diagramClass.IsCustom ) { #line default #line hidden #line 142 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">View model store containing this view model.</param> /// <param name=""diagram"">Diagram.</param> /// <param name=""modelContext"">Model context.</param> /// <param name=""parentModelContext"">Parent model context.</param> public "); #line default #line hidden #line 150 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 150 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 150 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModel("); #line default #line hidden #line 150 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 150 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@"ViewModelStore viewModelStore, DslEditorDiagrams::Diagram diagram, DslEditorModeling::ModelContext modelContext, DslEditorModeling::ModelContext parentModelContext) : base(viewModelStore, diagram, modelContext, parentModelContext) { } "); #line default #line hidden #line 154 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 156 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t#endregion\r\n\t}\r\n\t\r\n\t/// <summary>\r\n\t/// This class represents the default diagr" + "am surface view model of the "); #line default #line hidden #line 161 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.ApplicationName)); #line default #line hidden #line 161 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".\r\n\t/// \r\n\t/// This is the abstract base class.\r\n\t/// </summary>\r\n\tpublic abstrac" + "t partial class "); #line default #line hidden #line 165 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 165 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 165 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModelBase : "); #line default #line hidden #line 165 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 165 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\r\n\t{\r\n"); #line default #line hidden #line 167 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( !diagramClass.IsCustom ) { #line default #line hidden #line 170 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\tDslEditorModeling::ModelContext parentModelContext = null;\r\n\t\t\r\n"); #line default #line hidden #line 173 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } if( diagramClass is SpecificDependencyDiagram ) { #line default #line hidden #line 178 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" #region SpecificDependencyDiagram /// <summary> /// Gets the type of the model element that specifies the elements in the list of specific items. /// </summary> public override System.Guid ModelElementType { get { return "); #line default #line hidden #line 187 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture((diagramClass as SpecificDependencyDiagram).DomainClass.GetFullName(true))); #line default #line hidden #line 187 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@".DomainClassId; } } /// <summary> /// Creates a specific view model for the given model element. /// </summary> /// <param name=""store"">Viewmodelstore.</param> /// <param name=""modelElement"">Model element to create a specific VM for.</param> /// <returns>Specific VM.</returns> protected override DslEditorDependencies::SpecificDependenciesItemViewModel CreateSpecificViewModel(DslEditorViewModels.Data.ViewModelStore store, DslModeling::ModelElement modelElement) { "); #line default #line hidden #line 199 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 199 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 199 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ItemViewModel vm = new "); #line default #line hidden #line 199 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 199 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 199 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ItemViewModel(store, modelElement);\r\n\t\t\treturn vm;\r\n\t\t}\r\n\t\t#endregion\r\n"); #line default #line hidden #line 203 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 205 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">View model store containing this view model.</param> /// <param name=""diagram"">Diagram.</param> /// <param name=""modelContext"">Model context.</param> protected "); #line default #line hidden #line 213 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 213 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 213 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModelBase("); #line default #line hidden #line 213 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 213 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ViewModelStore viewModelStore, DslEditorDiagrams::Diagram diagram, DslEditorModel" + "ing::ModelContext modelContext)\r\n : base(viewModelStore, diagram, mod" + "elContext)\r\n {\r\n\t\t\t\r\n }\r\n\r\n"); #line default #line hidden #line 219 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( !diagramClass.IsCustom ) { #line default #line hidden #line 222 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">View model store containing this view model.</param> /// <param name=""diagram"">Diagram.</param> /// <param name=""modelContext"">Model context.</param> /// <param name=""parentModelContext"">Parent model context.</param> protected "); #line default #line hidden #line 230 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 230 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 230 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModelBase("); #line default #line hidden #line 230 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 230 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@"ViewModelStore viewModelStore, DslEditorDiagrams::Diagram diagram, DslEditorModeling::ModelContext modelContext, DslEditorModeling::ModelContext parentModelContext) : base(viewModelStore, diagram, modelContext) { this.parentModelContext = parentModelContext; } "); #line default #line hidden #line 235 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 237 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t#endregion\r\n\t\t\r\n\t\t#region IDockableViewModel\r\n"); #line default #line hidden #line 241 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( diagramClass is DesignerDiagramClass ) { #line default #line hidden #line 244 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" /// <summary> /// Gets the header image URI. /// </summary> public override string DockingPaneImageUri { get { return ""pack://*****:*****@"""; } } /// <summary> /// Gets the docking pane style. /// </summary> public override global::Tum.PDE.ToolFramework.Modeling.Visualization.ViewModel.DockingPaneStyle DockingPaneStyle { get { return global::Tum.PDE.ToolFramework.Modeling.Visualization.ViewModel.DockingPaneStyle.DockedInDocumentPane; } } #endregion #region Initialization /// <summary> /// Initialize. /// </summary> protected override void Initialize() { base.Initialize(); "); #line default #line hidden #line 295 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( !diagramClass.IsCustom ) { #line default #line hidden #line 298 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" if (IsIncludedModelInstance)\r\n return;\r\n\r\n\t\t\tif( paren" + "tModelContext == null )\r\n\t\t\t{\r\n\t\t\t\tforeach(DslEditorModeling::BaseModelContext m" + "odelContext in this.ModelData.AvailableModelContexts)\r\n\t\t\t\t{\r\n\t\t\t\t\tif( modelCont" + "ext.Name == \""); #line default #line hidden #line 306 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.ModelContext.Name)); #line default #line hidden #line 306 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\")\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tparentModelContext = modelContext as DslEditorModeling::ModelCo" + "ntext;\r\n\t\t\t\t\t\t//parentModelContext = modelContext as "); #line default #line hidden #line 309 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 309 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("."); #line default #line hidden #line 309 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.ModelContext.Name)); #line default #line hidden #line 309 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@"ModelContext; break; } } } // subscribe to changes of the diagram class, that is hosted by this view model. if( parentModelContext != null && this.Diagram == null) { DslEditorDiagrams::Diagram diagram = parentModelContext.GetDiagram("""); #line default #line hidden #line 318 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 318 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@""") as DslEditorDiagrams::Diagram; if( diagram != null ) { this.Reset(); InitIncludedDiagrams(diagram); this.Diagram = diagram; } parentModelContext.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(ModelContext_PropertyChanged); } "); #line default #line hidden #line 328 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 330 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\t\r\n }\r\n"); #line default #line hidden #line 332 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( !diagramClass.IsCustom ) { #line default #line hidden #line 335 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\r\n void ModelContext_PropertyChanged(object sender, System.ComponentMode" + "l.PropertyChangedEventArgs e)\r\n {\r\n if( e.PropertyName == \""); #line default #line hidden #line 338 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 338 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\" )\r\n\t\t\t{\r\n\t\t\t\tthis.Reset();\r\n\t\t\t\tDslEditorDiagrams::Diagram diagram = parentMode" + "lContext.GetDiagram(\""); #line default #line hidden #line 341 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 341 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\") as DslEditorDiagrams::Diagram;\r\n\t\t\t\tInitIncludedDiagrams(diagram);\r\n\t\t\t\tthis.D" + "iagram = diagram;\r\n\t\t\t\t\r\n\t\t\t\t//InitIncludedDiagrams(parentModelContext."); #line default #line hidden #line 345 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 345 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(");\r\n\t\t\t\t//this.Diagram = parentModelContext."); #line default #line hidden #line 346 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 346 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(";\t\t\t\t\r\n\t\t\t}\r\n }\r\n\t\t[System.Diagnostics.CodeAnalysis.SuppressMessage(\"Micro" + "soft.Reliability\", \"CA2000:Dispose objects before losing scope\")]\r\n\t\tvoid InitIn" + "cludedDiagrams(DslEditorDiagrams::Diagram includingDiagram)\r\n\t\t{\r\n"); #line default #line hidden #line 352 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( diagramClass is DesignerDiagramClass ) { DesignerDiagramClass designerDiagramClass = diagramClass as DesignerDiagramClass; if( designerDiagramClass.IncludedDiagramClasses.Count > 0 ) { #line default #line hidden #line 358 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\tforeach(DslEditorDiagrams::Diagram diagram in includingDiagram.IncludedDiagram" + "s)\r\n\t\t\t{\r\n"); #line default #line hidden #line 361 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" foreach(DiagramClass d in (diagramClass as DesignerDiagramClass).IncludedDiagramClasses ) { #line default #line hidden #line 364 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\tif( diagram.UniqueName == \""); #line default #line hidden #line 365 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Name)); #line default #line hidden #line 365 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 365 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\")\r\n\t\t\t\t{\r\n\t\t\t\t\tDslEditorViewDiagrams::DiagramSurfaceViewModel dVm = new "); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Namespace)); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".ViewModel."); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Name)); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("SurfaceViewModel(\r\n\t\t\t\t\t\tthis.ViewModelStore.GetExternViewModelStore(typeof("); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Namespace)); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".ViewModel."); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Name)); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ViewModelStore)) as "); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Namespace)); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".ViewModel."); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Name)); #line default #line hidden #line 368 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ViewModelStore, diagram, this.ModelContext);\r\n\t\t\t\t\tdVm.ParentDiagramSurfaceViewMo" + "del = this;\r\n\t\t\t\t\tdVm.IsIncludedModelInstance = true;\r\n\t\t\t\t\tthis.AddIncludedSurf" + "aceViewModels(dVm);\r\n\t\t\t\t}\r\n"); #line default #line hidden #line 373 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 375 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t}\r\n"); #line default #line hidden #line 377 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } #line default #line hidden #line 380 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\r\n\t\t}\r\n"); #line default #line hidden #line 382 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 384 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\r\n #endregion\r\n"); #line default #line hidden #line 386 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( !diagramClass.IsCustom ) { #line default #line hidden #line 389 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\r\n\t\t/// <summary>\r\n /// Gets the diagram class type.\r\n /// </summar" + "y>\r\n /// <returns></returns>\r\n public override System.Guid GetDiag" + "ramClassType()\r\n\t\t{\r\n\t\t\treturn "); #line default #line hidden #line 397 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 397 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("."); #line default #line hidden #line 397 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 397 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@".DomainClassId; } #region Methods /// <summary> /// Verifies if a relationship can be created based on the given data. /// </summary> /// <param name=""info"">Info specifying the relationship to create.</param> /// <returns>True if a relationship can be created. False otherwise.</returns> public override bool CanCreateRelationship(DslEditorViewDiagrams::ViewModelRelationshipCreationInfo info) { if( info.Source == null || info.Target == null ) return false; if( info.Source.ShapeElement == null || info.Target.ShapeElement == null ) return false; if( info.Source.ShapeElement.Element == null || info.Target.ShapeElement.Element == null ) return false; if (!info.Source.ShapeElement.TakesPartInRelationship) return false; bool bCanCreate = false; "); #line default #line hidden #line 422 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" foreach (PresentationElementClass element in diagramClass.PresentationElements) { if( element is RelationshipShapeClass ) { RelationshipShapeClass rsShape = element as RelationshipShapeClass; DomainRelationship con = rsShape.ReferenceRelationship; if( con != null ) { #line default #line hidden #line 431 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\r\n\t\t\tif( !bCanCreate )\r\n\t\t\t\tbCanCreate = CanCreateRelationshipShape"); #line default #line hidden #line 434 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 434 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(info);\r\n"); #line default #line hidden #line 435 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } //if( CodeGenerationUtilities.ShapeTakesPart(shapeClass, con) ) } else if( element is MappingRelationshipShapeClass ) { MappingRelationshipShapeClass rsShape = element as MappingRelationshipShapeClass; if( rsShape.DomainClass != null ) { ReferenceRelationship conSource = rsShape.Source; ReferenceRelationship conTarget = rsShape.Target; if( conSource != null && conTarget != null ) { DomainClass source = conSource.Target.RolePlayer as DomainClass; DomainClass target = conTarget.Target.RolePlayer as DomainClass; if( source != null && target != null ) { #line default #line hidden #line 452 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\r\n\t\t\tif( !bCanCreate )\r\n\t\t\t\tbCanCreate = CanCreateMappingRelationshipShape"); #line default #line hidden #line 455 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 455 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(info);\r\n"); #line default #line hidden #line 456 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } } } #line default #line hidden #line 462 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 464 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" if( !bCanCreate ) { foreach(DslEditorViewDiagrams::DiagramSurfaceViewModel vm in this.IncludedSurfaceViewModels) { if( vm.CanCreateRelationship(info) ) return true; } } return bCanCreate; } "); #line default #line hidden #line 478 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" foreach (PresentationElementClass element in diagramClass.PresentationElements) { if( element is RelationshipShapeClass ) { RelationshipShapeClass rsShape = element as RelationshipShapeClass; DomainRelationship con = rsShape.ReferenceRelationship; if( con != null ) { #line default #line hidden #line 487 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t/// <summary>\r\n /// Verifies if a relationship shape of type "); #line default #line hidden #line 489 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 489 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" can be created based on the given data. /// </summary> /// <param name=""info"">Info specifying the relationship to create.</param> /// <returns>True if a relationship can be created. False otherwise.</returns> protected virtual bool CanCreateRelationshipShape"); #line default #line hidden #line 493 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 493 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(DslEditorViewDiagrams::ViewModelRelationshipCreationInfo info)\r\n\t\t{\r\n\t\t\tif( info" + ".Source.Element is "); #line default #line hidden #line 495 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Source.RolePlayer.GetFullName(true))); #line default #line hidden #line 495 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" && info.Target.Element is "); #line default #line hidden #line 495 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Target.RolePlayer.GetFullName(true))); #line default #line hidden #line 495 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" )\r\n\t\t\t{\r\n"); #line default #line hidden #line 497 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" // see if we can add relationship without breaking cardinality constraints if(con.Target.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.One || con.Target.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.ZeroOne ) { #line default #line hidden #line 501 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\tSystem.Collections.ObjectModel.ReadOnlyCollection<"); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("> allM"); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Name)); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances1 = DslModeling::DomainRoleInfo.GetElementLinks<"); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(">(info.Target.Element, "); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("."); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Target.Name)); #line default #line hidden #line 502 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("DomainRoleId);\r\n\t\t\t\tif(allM"); #line default #line hidden #line 503 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Name)); #line default #line hidden #line 503 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances1.Count > 0 )\r\n\t\t\t\t\treturn false;\r\n\r\n"); #line default #line hidden #line 506 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } /*if(con.Source.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.One || con.Source.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.ZeroOne ) { #line default #line hidden #line 510 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\tSystem.Collections.ObjectModel.ReadOnlyCollection<"); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("> allM"); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Name)); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances2 = DslModeling::DomainRoleInfo.GetElementLinks<"); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(">(info.Source.Element, "); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("."); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Source.Name)); #line default #line hidden #line 511 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("DomainRoleId);\r\n\t\t\t\tif(allM"); #line default #line hidden #line 512 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Name)); #line default #line hidden #line 512 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances2.Count > 0 )\r\n\t\t\t\t\treturn false;\r\n\r\n"); #line default #line hidden #line 515 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } */ if( !con.AllowsDuplicates ) { #line default #line hidden #line 520 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\t// see if a relationship already exists (can not create new one of the same t" + "ype as no duplicates are allowed)\r\n\t\t\t\tif( "); #line default #line hidden #line 522 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 522 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".GetLinks(info.Source.Element as "); #line default #line hidden #line 522 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Source.RolePlayer.GetFullName(true))); #line default #line hidden #line 522 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(", info.Target.Element as "); #line default #line hidden #line 522 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Target.RolePlayer.GetFullName(true))); #line default #line hidden #line 522 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(").Count > 0 )\r\n\t\t\t\t\treturn false;\r\n"); #line default #line hidden #line 524 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 526 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\r\n"); #line default #line hidden #line 534 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } else if( element is MappingRelationshipShapeClass ) { MappingRelationshipShapeClass rsShape = element as MappingRelationshipShapeClass; if( rsShape.DomainClass != null ) { ReferenceRelationship conSource = rsShape.Source; ReferenceRelationship conTarget = rsShape.Target; if( conSource != null && conTarget != null ) { DomainClass source = conSource.Target.RolePlayer as DomainClass; DomainClass target = conTarget.Target.RolePlayer as DomainClass; if( source != null && target != null ) { #line default #line hidden #line 551 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t/// <summary>\r\n /// Verifies if a mapping relationship of type "); #line default #line hidden #line 553 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 553 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" can be created based on the given data. /// </summary> /// <param name=""info"">Info specifying the relationship to create.</param> /// <returns>True if a relationship can be created. False otherwise.</returns> protected virtual bool CanCreateMappingRelationshipShape"); #line default #line hidden #line 557 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 557 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(DslEditorViewDiagrams::ViewModelRelationshipCreationInfo info)\r\n\t\t{\r\n\t\t\tif( info" + ".Source.Element is "); #line default #line hidden #line 559 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(source.GetFullName(true))); #line default #line hidden #line 559 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" && info.Target.Element is "); #line default #line hidden #line 559 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(target.GetFullName(true))); #line default #line hidden #line 559 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" )\r\n\t\t\t{\r\n"); #line default #line hidden #line 561 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" // see if we can add new element + relationships without breaking cardinality constraints if(conSource.Target.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.One || conSource.Target.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.ZeroOne ) { #line default #line hidden #line 565 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\tSystem.Collections.ObjectModel.ReadOnlyCollection<"); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conSource.GetFullName(true))); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("> allM"); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conSource.Name)); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances1 = DslModeling::DomainRoleInfo.GetElementLinks<"); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conSource.GetFullName(true))); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(">(info.Source.Element, "); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conSource.GetFullName(true))); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("."); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conSource.Target.Name)); #line default #line hidden #line 566 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("DomainRoleId);\r\n\t\t\t\tif(allM"); #line default #line hidden #line 567 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conSource.Name)); #line default #line hidden #line 567 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances1.Count > 0 )\r\n\t\t\t\t\treturn false;\r\n"); #line default #line hidden #line 569 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } if(conTarget.Target.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.One || conTarget.Target.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.ZeroOne ) { #line default #line hidden #line 573 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\tSystem.Collections.ObjectModel.ReadOnlyCollection<"); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conTarget.GetFullName(true))); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("> allM"); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conTarget.Name)); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances2 = DslModeling::DomainRoleInfo.GetElementLinks<"); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conTarget.GetFullName(true))); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(">(info.Target.Element, "); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conTarget.GetFullName(true))); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("."); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conTarget.Target.Name)); #line default #line hidden #line 574 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("DomainRoleId);\r\n\t\t\t\tif(allM"); #line default #line hidden #line 575 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conTarget.Name)); #line default #line hidden #line 575 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("Instances2.Count > 0 )\r\n\t\t\t\t\treturn false;\r\n"); #line default #line hidden #line 577 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 579 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\r\n"); #line default #line hidden #line 587 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } } } #line default #line hidden #line 593 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 595 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\r\n /// <summary>\r\n /// Creates a relationship based on the given da" + "ta.\r\n /// </summary>\r\n /// <param name=\"info\">Info specifying the " + "relationship to create.</param>\r\n public override void CreateRelationship" + "(DslEditorViewDiagrams::ViewModelRelationshipCreationInfo info)\r\n\t\t{\r\n\t\t\tif( inf" + "o.Source == null || info.Target == null )\r\n\t\t\t\treturn;\r\n\t\t\t\t\r\n\t\t\tif( info.Source" + ".ShapeElement == null || info.Target.ShapeElement == null )\r\n\t\t\t\treturn;\r\n\t\t\t\t\r\n" + "\t\t\tif( info.Source.ShapeElement.Element == null || info.Target.ShapeElement.Elem" + "ent == null )\r\n\t\t\t\treturn;\r\n\t\t\t\t\r\n\t\t\tif (!info.Source.ShapeElement.TakesPartInRe" + "lationship)\r\n return;\r\n\r\n\t\t\t// gather creatable shapes\r\n\t\t\tSystem" + ".Collections.Generic.List<DslEditorSelection::SearchRSType.SearchRSTypeStruct> s" + "hapesPossible = this.GetCreatableRelationships(info);\r\n\t\t\tSystem.Guid shapeToCre" + "ate = System.Guid.Empty;\r\n\r\n\t\t\tif( shapesPossible.Count == 0 )\r\n\t\t\t\treturn;\r\n\t\t\t" + "else if (shapesPossible.Count == 1)\r\n shapeToCreate = shapesPossi" + "ble[0].DomainClassId;\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t// let user choose what shape type he " + "wants to create\r\n\t\t\t\tDslEditorSelection::SelectGenericViewModel<DslEditorSelecti" + "on::SearchRSType.SearchRSTypeStruct> selectionViewModel\r\n " + " = new DslEditorSelection.SelectGenericViewModel<DslEditorSelection::SearchR" + "SType.SearchRSTypeStruct>(\r\n this.ViewModelStore," + " shapesPossible,\r\n new DslEditorSelection.Generic" + "SearchDelegate<DslEditorSelection::SearchRSType.SearchRSTypeStruct>(DslEditorSel" + "ection::SearchRSType.Search),\r\n new DslEditorSele" + "ction.GenericSortDelegate<DslEditorSelection::SearchRSType.SearchRSTypeStruct>(D" + "slEditorSelection::SearchRSType.Sort));\r\n\r\n // show dialog\r\n " + " bool? result = this.GlobalServiceProvider.Resolve<DslEditorServices::" + "IUIVisualizerService>().ShowDialog(\"SelectRSTypePopup\", selectionViewModel);\r\n " + " if (result == true && selectionViewModel.SelectedElement != null)\r" + "\n {\r\n shapeToCreate = selectionViewModel.Selec" + "tedElement.Value.DomainClassId;\r\n }\r\n\r\n selectionV" + "iewModel.Dispose();\r\n System.GC.Collect();\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tif( sha" + "peToCreate == System.Guid.Empty )\r\n\t\t\t\treturn;\r\n\t\t\t\t\r\n\t\t\tthis.CreateRelationship" + "(info, shapeToCreate);\r\n\t\t\t\r\n\t\t\t\r\n }\r\n\r\n /// <summary>\r\n //" + "/ Creates a relationship based on the given data.\r\n /// </summary>\r\n " + " /// <param name=\"info\">Info specifying the relationship to create.</param>\r\n " + " /// <param name=\"shapeToCreate\">Type of the relationship shape</param>\r\n " + " public override void CreateRelationship(DslEditorViewDiagrams::ViewModelR" + "elationshipCreationInfo info, System.Guid shapeToCreate)\r\n {\r\n"); #line default #line hidden #line 658 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" foreach (PresentationElementClass element in diagramClass.PresentationElements) { if( element is RelationshipShapeClass ) { RelationshipShapeClass rsShape = element as RelationshipShapeClass; DomainRelationship con = rsShape.ReferenceRelationship; if( con != null ) { #line default #line hidden #line 667 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\tif( shapeToCreate == "); #line default #line hidden #line 668 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.GetFullName(true))); #line default #line hidden #line 668 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".DomainClassId)\r\n\t\t\t{\r\n\t\t\t\tusing(DslModeling::Transaction transaction = this.Stor" + "e.TransactionManager.BeginTransaction(\"Add global::Tum.VModellXT.Dynamik.Ueberga" + "ngShape \") )\r\n\t\t\t\t{\r\n"); #line default #line hidden #line 672 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if(con.Source.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.One || con.Source.Multiplicity == Tum.PDE.LanguageDSL.Multiplicity.ZeroOne ) { #line default #line hidden #line 675 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\t\tSystem.Collections.ObjectModel.ReadOnlyCollection<"); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("> allInstances = DslModeling::DomainRoleInfo.GetElementLinks<"); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(">(info.Source.Element, "); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("."); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.Source.Name)); #line default #line hidden #line 676 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("DomainRoleId);\r\n\t\t\t\t\tif(allInstances.Count > 0 )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tallInstances[0].D" + "elete();\r\n\t\t\t\t\t}\r\n"); #line default #line hidden #line 681 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 683 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\r\n\t\t\t\t\tCreateRelationship<"); #line default #line hidden #line 685 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.GetFullName(true))); #line default #line hidden #line 685 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(">(info.Source.ShapeElement.Element, info.Target.ShapeElement.Element);\r\n\t\t\t\t\t\r\n\t\t" + "\t\t\ttransaction.Commit();\r\n\t\t\t\t}\r\n\t\t\t}\r\n"); #line default #line hidden #line 690 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } else if( element is MappingRelationshipShapeClass ) { MappingRelationshipShapeClass rsShape = element as MappingRelationshipShapeClass; if( rsShape.DomainClass != null ) { DomainClass domainClass = rsShape.DomainClass; ReferenceRelationship conSource = rsShape.Source; ReferenceRelationship conTarget = rsShape.Target; if( conSource != null && conTarget != null ) { DomainClass source = conSource.Target.RolePlayer as DomainClass; DomainClass target = conTarget.Target.RolePlayer as DomainClass; if( source != null && target != null ) { #line default #line hidden #line 707 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\r\n\t\t\tif( shapeToCreate == "); #line default #line hidden #line 709 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.GetFullName(true))); #line default #line hidden #line 709 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".DomainClassId)\r\n\t\t\t{\r\n\t\t\t\tusing(DslModeling::Transaction transaction = this.Stor" + "e.TransactionManager.BeginTransaction(\"Add global::Tum.VModellXT.Dynamik.Ueberga" + "ngShape \") )\r\n\t\t\t\t{\r\n\t\t\t\t\t"); #line default #line hidden #line 713 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 713 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" linkElement = new "); #line default #line hidden #line 713 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 713 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(this.Store);\r\n\t\t\t\t\tnew "); #line default #line hidden #line 714 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conSource.GetFullName(true))); #line default #line hidden #line 714 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(linkElement, info.Source.Element as "); #line default #line hidden #line 714 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(source.GetFullName(true))); #line default #line hidden #line 714 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(");\r\n\t\t\t\t\tnew "); #line default #line hidden #line 715 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(conTarget.GetFullName(true))); #line default #line hidden #line 715 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(linkElement, info.Target.Element as "); #line default #line hidden #line 715 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(target.GetFullName(true))); #line default #line hidden #line 715 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(");\t\t\t\t\t\r\n\r\n\t\t\t\t\tDslModeling::ModelElement modelElementParent = EmbedElement(linkE" + "lement);\r\n\t\t\t\t\tif( modelElementParent == null )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttransaction.Rollb" + "ack();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif ("); #line default #line hidden #line 724 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 724 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ElementNameProvider.Instance.HasName(linkElement))\r\n \t\t\t\t\t\t"); #line default #line hidden #line 725 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 725 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("ElementNameProvider.Instance.CreateAndAssignName(modelElementParent, linkElement)" + ";\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\ttransaction.Commit();\r\n\t\t\t\t}\r\n\t\t\t}\r\n"); #line default #line hidden #line 732 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } } } #line default #line hidden #line 738 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 740 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" foreach(DslEditorViewDiagrams::DiagramSurfaceViewModel vm in this.IncludedSurfaceViewModels) { vm.CreateRelationship(info, shapeToCreate); } } /// <summary> /// Gets creatable relationship shapes. /// </summary> /// <param name=""info"">Info specifying the relationship to create.</param> public override System.Collections.Generic.List<DslEditorSelection::SearchRSType.SearchRSTypeStruct> GetCreatableRelationships(DslEditorViewDiagrams::ViewModelRelationshipCreationInfo info) { System.Collections.Generic.List<DslEditorSelection::SearchRSType.SearchRSTypeStruct> shapesPossible = base.GetCreatableRelationships(info); "); #line default #line hidden #line 756 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" foreach (PresentationElementClass element in diagramClass.PresentationElements) { if( element is RelationshipShapeClass ) { RelationshipShapeClass rsShape = element as RelationshipShapeClass; DomainRelationship con = rsShape.ReferenceRelationship; if( con != null ) { #line default #line hidden #line 765 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\tif( CanCreateRelationshipShape"); #line default #line hidden #line 766 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 766 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(info) )\r\n\t\t\t{\r\n\t\t\t\tshapesPossible.Add(new DslEditorSelection::SearchRSType.Searc" + "hRSTypeStruct(\r\n\t\t\t\t\t"); #line default #line hidden #line 769 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.GetFullName(true))); #line default #line hidden #line 769 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".DomainClassId, \""); #line default #line hidden #line 769 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(con.DisplayName)); #line default #line hidden #line 769 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\", \""); #line default #line hidden #line 769 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.DisplayName)); #line default #line hidden #line 769 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\"));\r\n\t\t\t}\r\n"); #line default #line hidden #line 771 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } else if( element is MappingRelationshipShapeClass ) { MappingRelationshipShapeClass rsShape = element as MappingRelationshipShapeClass; if( rsShape.DomainClass != null ) { DomainClass domainClass = rsShape.DomainClass; ReferenceRelationship conSource = rsShape.Source; ReferenceRelationship conTarget = rsShape.Target; if( conSource != null && conTarget != null ) { DomainClass source = conSource.Target.RolePlayer as DomainClass; DomainClass target = conTarget.Target.RolePlayer as DomainClass; if( source != null && target != null ) { #line default #line hidden #line 788 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\r\n\t\t\tif( CanCreateMappingRelationshipShape"); #line default #line hidden #line 790 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.Name)); #line default #line hidden #line 790 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(info) )\r\n\t\t\t{\r\n\t\t\t\tshapesPossible.Add(new DslEditorSelection::SearchRSType.Searc" + "hRSTypeStruct(\r\n\t\t\t\t\t"); #line default #line hidden #line 793 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.GetFullName(true))); #line default #line hidden #line 793 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".DomainClassId, \""); #line default #line hidden #line 793 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.DisplayName)); #line default #line hidden #line 793 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\", \""); #line default #line hidden #line 793 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(rsShape.DisplayName)); #line default #line hidden #line 793 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\"));\r\n\t\t\t}\r\n"); #line default #line hidden #line 795 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } } } } #line default #line hidden #line 801 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" foreach(DslEditorViewDiagrams::DiagramSurfaceViewModel vm in this.IncludedSurfaceViewModels) { shapesPossible.AddRange(vm.GetCreatableRelationships(info)); } return shapesPossible; } #endregion #region Classes Embedding Methods "); #line default #line hidden #line 813 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" List<PresentationElementClass> requireCustomEmbedMethods = new List<PresentationElementClass>(); foreach (PresentationElementClass element in diagramClass.PresentationElements) { if( element is MappingRelationshipShapeClass ) { MappingRelationshipShapeClass shape = element as MappingRelationshipShapeClass; DomainClass domainClass = shape.DomainClass; if( domainClass == null ) continue; requireCustomEmbedMethods.Add(element); } else if( element is ShapeClass ) { ShapeClass shapeClass = element as ShapeClass; DomainClass domainClass = shapeClass.DomainClass; if( domainClass == null ) continue; if( shapeClass.Parent != null ) { bool bFound = false; foreach(EmbeddingRelationship con in embeddingChildParentMapping[domainClass] ) { if( con.Source.RolePlayer == shapeClass.Parent.DomainClass ) bFound = true; } if( !bFound ) { requireCustomEmbedMethods.Add(element); continue; } } } } if( requireCustomEmbedMethods.Count > 0 ) { #line default #line hidden #line 855 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" /// <summary> /// Tries to embed an element as the child of the selected element. /// </summary> /// <param name=""modelElement"">Model element to embed.</param> /// <returns>Parent model element the child was embedded at on success. Null otherwise.</returns> public override DslEditorModeling::DomainModelElement EmbedElement(DslEditorModeling::DomainModelElement modelElement) { "); #line default #line hidden #line 864 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" foreach (PresentationElementClass element in requireCustomEmbedMethods) { if( element is MappingRelationshipShapeClass ) { MappingRelationshipShapeClass shape = element as MappingRelationshipShapeClass; DomainClass domainClass = shape.DomainClass; #line default #line hidden #line 871 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\tif( modelElement.GetDomainClassId() == "); #line default #line hidden #line 872 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 872 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".DomainClassId )\r\n\t\t\t\treturn Embed"); #line default #line hidden #line 873 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.Name)); #line default #line hidden #line 873 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("For"); #line default #line hidden #line 873 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(shape.Name)); #line default #line hidden #line 873 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(modelElement as "); #line default #line hidden #line 873 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 873 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(");\r\n"); #line default #line hidden #line 874 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } else if( element is ShapeClass ) { ShapeClass shapeClass = element as ShapeClass; DomainClass domainClass = shapeClass.DomainClass; #line default #line hidden #line 880 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\tif( modelElement.GetDomainClassId() == "); #line default #line hidden #line 881 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 881 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(".DomainClassId )\r\n\t\t\t\treturn Embed"); #line default #line hidden #line 882 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.Name)); #line default #line hidden #line 882 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("For"); #line default #line hidden #line 882 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(shapeClass.Name)); #line default #line hidden #line 882 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("(modelElement as "); #line default #line hidden #line 882 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 882 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(");\r\n"); #line default #line hidden #line 883 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } #line default #line hidden #line 887 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\r\n\t\t\treturn base.EmbedElement(modelElement);\r\n\t\t}\r\n"); #line default #line hidden #line 891 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } foreach (PresentationElementClass element in requireCustomEmbedMethods) { if( element is MappingRelationshipShapeClass ) { MappingRelationshipShapeClass shape = element as MappingRelationshipShapeClass; DomainClass domainClass = shape.DomainClass; #line default #line hidden #line 900 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" /// <summary> /// Attempts to embedd the given element at its specific parent. If it fails, null is returned. /// </summary> /// <param name=""linkElement"">Element to embed.</param> /// <returns>Parent element on success. Null on failure.</returns> protected abstract DslEditorModeling::DomainModelElement Embed"); #line default #line hidden #line 907 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.Name)); #line default #line hidden #line 907 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("For"); #line default #line hidden #line 907 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(shape.Name)); #line default #line hidden #line 907 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("("); #line default #line hidden #line 907 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 907 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" linkElement);\r\n"); #line default #line hidden #line 908 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } else if( element is ShapeClass ) { ShapeClass shapeClass = element as ShapeClass; DomainClass domainClass = shapeClass.DomainClass; #line default #line hidden #line 916 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(@" /// <summary> /// Attempts to embedd the given element at its specific parent. If it fails, null is returned. /// </summary> /// <param name=""info"">Creation info.</param> /// <param name=""linkElement"">Element to embed.</param> /// <returns>Parent element on success. Null on failure.</returns> protected abstract DslEditorModeling::DomainModelElement Embed"); #line default #line hidden #line 924 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.Name)); #line default #line hidden #line 924 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("For"); #line default #line hidden #line 924 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(shapeClass.Name)); #line default #line hidden #line 924 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("("); #line default #line hidden #line 924 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(domainClass.GetFullName(true))); #line default #line hidden #line 924 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write(" elementToEmbed);\r\n"); #line default #line hidden #line 925 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } } #line default #line hidden #line 928 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t#endregion\r\n"); #line default #line hidden #line 930 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 932 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\r\n\t\t#region Dispose\r\n /// <summary>\r\n /// Clean up.\r\n /// " + "</summary>\r\n protected override void OnDispose()\r\n {\r\n"); #line default #line hidden #line 940 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" if( !diagramClass.IsCustom ) { #line default #line hidden #line 943 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\r\n if( parentModelContext != null )\r\n \tparentModelContex" + "t.PropertyChanged -= new System.ComponentModel.PropertyChangedEventHandler(Model" + "Context_PropertyChanged);\r\n"); #line default #line hidden #line 946 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" } #line default #line hidden #line 948 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" this.Write("\t\t\t\t\t\r\n\t\t\t\t\r\n base.OnDispose();\r\n }\r\n #endregion\r\n\t}\r\n\r\n" + "}\r\n"); #line default #line hidden #line 956 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramViewModelGenerator.tt" }
private void CreateConstructor(MetaModel dm, DiagramClass diagramClass, bool isBaseAbstractClass) { string accessor = "public"; string name = dm.Name + diagramClass.Name + "SurfaceViewModel"; if (isBaseAbstractClass) { accessor = "protected"; name += "Base"; } if (diagramClass is ModalDiagram) { #line default #line hidden #line 336 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("/// <summary>\r\n/// Constuctor.\r\n/// </summary>\r\n/// <param name=\"viewModelStore\">" + "The store this view model belongs to.</param>\r\n/// <param name=\"element\">Element" + ".</param>\r\n"); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 342 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(DslEditorViewModels.Data.ViewModelStore viewModelStore, DslEditorModeling::Domai" + "nModelElement element)\r\n : base(viewModelStore, element)\r\n{\r\n\r\n}\r\n"); #line default #line hidden #line 347 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if (diagramClass is SpecificElementsDiagram) { #line default #line hidden #line 351 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("/// <summary>\r\n/// Constuctor.\r\n/// </summary>\r\n/// <param name=\"viewModelStore\">" + "The store this view model belongs to.</param>\r\n/// <param name=\"modelContext\">Mo" + "del context.</param>\r\n"); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 357 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@"(DslEditorViewModels.Data.ViewModelStore viewModelStore, DslEditorModeling::ModelContext modelContext) : base(viewModelStore, modelContext) { } /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""modelContextName"">Model context name.</param> "); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 367 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(DslEditorViewModels.Data.ViewModelStore viewModelStore, string modelContextName)" + "\r\n : base(viewModelStore, modelContextName)\r\n{\r\n}\r\n"); #line default #line hidden #line 371 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if (diagramClass is DesignerSurfaceDiagram) { #line default #line hidden #line 377 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } if (diagramClass is RestorableChildlessDiagram || diagramClass is RestorableTemplatedDiagramVMOnly) { #line default #line hidden #line 382 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("/// <summary>\r\n/// Constuctor.\r\n/// </summary>\r\n/// <param name=\"viewModelStore\">" + "The store this view model belongs to.</param>\r\n"); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(accessor)); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" "); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(name)); #line default #line hidden #line 387 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(DslEditorViewModels.Data.ViewModelStore viewModelStore)\r\n : base(viewModelSto" + "re)\r\n{\r\n\r\n}\r\n"); #line default #line hidden #line 392 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } }
public string GenerateDiagramViewModel(MetaModel dm, DiagramClass diagramClass) { this.GenerationEnvironment = null; this.GenerateDiagramViewModelInternal(dm, diagramClass); return(this.GenerationEnvironment.ToString()); }
public void GenerateDiagramItemViewModel(MetaModel dm, DiagramClass diagramClass) { #line default #line hidden #line 25 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("namespace "); #line default #line hidden #line 26 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 26 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(".ViewModel\r\n{\r\n"); #line default #line hidden #line 28 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" foreach(PresentationElementClass presentationElement in diagramClass.PresentationElements) { string baseClass = "DslEditorViewDiagrams::DiagramItemElementViewModel"; bool hasBaseClass = false; if( !(presentationElement is ShapeClass) ) continue; else if( presentationElement is ShapeClass ) { if( (presentationElement as ShapeClass).BaseShape != null ) { baseClass = (presentationElement as ShapeClass).BaseShape.GetMetaModel().Namespace + ".ViewModel." + (presentationElement as ShapeClass).BaseShape.Name + "DiagramItemViewModel"; hasBaseClass = true; } } ShapeClass shapeClassElement = presentationElement as ShapeClass; bool canHaveNestedChildren = false; bool canHaveRelativeChildren = false; foreach (PresentationElementClass element in diagramClass.PresentationElements) { if (element is ShapeClass) { ShapeClass shapeClass = element as ShapeClass; DomainClass domainClass = shapeClass.DomainClass; if( domainClass == null ) continue; if( shapeClass.Parent == presentationElement ) { if( shapeClass.IsRelativeChild ) canHaveRelativeChildren = true; else canHaveNestedChildren = true; } } } #line default #line hidden #line 70 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t/// <summary>\r\n /// View model for "); #line default #line hidden #line 72 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 72 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(".\r\n\t///\r\n\t/// Double-derived class to allow easier code customization.\r\n /// <" + "/summary>\r\n\tpublic partial class "); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("DiagramItemViewModel : "); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@"DiagramItemViewModelBase { #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""diagram"">The Diagram this item belongs to.</param> /// <param name=""shapeElement"">Model element, that is hosted by this view model.</param> public "); #line default #line hidden #line 85 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 85 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@"DiagramItemViewModel(DslEditorViewModelData::ViewModelStore viewModelStore, DslEditorViewDiagrams::DiagramSurfaceViewModel diagram, DslEditorDiagrams::NodeShape shapeElement) : base(viewModelStore, diagram, shapeElement) { } #endregion } /// <summary> /// View model for "); #line default #line hidden #line 93 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 93 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(".\r\n\t///\r\n\t/// This is the abstract base class.\r\n /// </summary>\r\n\tpublic parti" + "al class "); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("DiagramItemViewModelBase : "); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 97 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@" { #region Constructor /// <summary> /// Constuctor. /// </summary> /// <param name=""viewModelStore"">The store this view model belongs to.</param> /// <param name=""diagram"">The Diagram this item belongs to.</param> /// <param name=""shapeElement"">Model element, that is hosted by this view model.</param> protected "); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(presentationElement.Name)); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@"DiagramItemViewModelBase(DslEditorViewModelData::ViewModelStore viewModelStore, DslEditorViewDiagrams::DiagramSurfaceViewModel diagram, DslEditorDiagrams::NodeShape shapeElement) : base(viewModelStore, diagram, shapeElement) { } #endregion #region Methods /// <summary> /// Gets whether this view model can have nested children or not. /// </summary> public override bool CanHaveNestedChildren { get { "); #line default #line hidden #line 120 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" if( hasBaseClass ) { #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\tif( base.CanHaveNestedChildren )\r\n\t\t\t\treturn true;\r\n\t\t\t\r\n"); #line default #line hidden #line 127 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } #line default #line hidden #line 129 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\t\treturn "); #line default #line hidden #line 130 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(canHaveNestedChildren.ToString().ToLower())); #line default #line hidden #line 130 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(";\r\n\t\t\t}\r\n\t\t}\r\n\r\n /// <summary>\r\n /// Gets whether this view model c" + "an have relative children or not.\r\n /// </summary>\r\n public overri" + "de bool CanHaveRelativeChildren\r\n\t\t{ \r\n\t\t\tget\r\n\t\t\t{\r\n"); #line default #line hidden #line 141 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" if( hasBaseClass ) { #line default #line hidden #line 144 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\tif( base.CanHaveRelativeChildren )\r\n\t\t\t\treturn true;\r\n\t\t\t\r\n"); #line default #line hidden #line 148 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } #line default #line hidden #line 150 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t\t\t\r\n\t\t\t\treturn "); #line default #line hidden #line 151 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(canHaveRelativeChildren.ToString().ToLower())); #line default #line hidden #line 151 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(";\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n #endregion\t\t\t\r\n\r\n"); #line default #line hidden #line 157 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" if( shapeClassElement.Parent == null ) { #line default #line hidden #line 160 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write(@" #region Properties /// <summary> /// False if this item view model is directly hosted on the diagram surface and its shape can be deleted /// whithout the hosted model element beeing required to be deleted as well. True otherwise. /// </summary> /// <remarks> /// Items need to delete their hosted element if they are themselves not directly hosted /// on the diagram's surface. /// </remarks> public override bool AutomaticallyDeletesHostedElement { get { return false; } } #endregion "); #line default #line hidden #line 180 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } if(shapeClassElement.GeneratePropertiesVM) { this.PushIndent("\t\t"); this.Write(DiagramGeneratorHelper.Instance.CreatePropertyHandlers(presentationElement, (presentationElement as PresentationDomainClassElement).DomainClass, hasBaseClass)); this.PopIndent(); } #line default #line hidden #line 189 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("\t}\r\n\t\r\n"); #line default #line hidden #line 192 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" } #line default #line hidden #line 194 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" this.Write("}\r\n"); #line default #line hidden #line 196 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\DiagramItemViewModelGenerator.tt" }
public void GenerateDiagram(MetaModel dm, DiagramClass diagram) { string baseClass = "DslEditorDiagrams::Diagram"; if (diagram is DependencyDiagram) { baseClass = "DslEditorDiagrams::GraphicalDependenciesDiagram"; } #line default #line hidden #line 30 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\r\nnamespace "); #line default #line hidden #line 32 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 32 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\r\n{\r\n\t/// <summary>\r\n /// "); #line default #line hidden #line 35 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 35 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(" class representing a Diagram.\r\n /// </summary>\r\n\t[DslModeling::DomainObjectId" + "(\""); #line default #line hidden #line 37 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Id.ToString("D"))); #line default #line hidden #line 37 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\")]\r\n\tpublic partial class "); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(" : "); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\r\n\t{\r\n\t\t#region Constructors, domain class Id\r\n\t\r\n\t\t/// <summary>\r\n\t\t/// VModellv" + "ariante domain class Id.\r\n\t\t/// </summary>\r\n\t\tpublic static readonly new global:" + ":System.Guid DomainClassId = new System.Guid(\""); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Id.ToString("D"))); #line default #line hidden #line 45 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@"""); /// <summary> /// Constructor /// </summary> /// <param name=""store"">Store where new element is to be created.</param> /// <param name=""propertyAssignments"">List of domain property id/value pairs to set once the element is created.</param> public " ); #line default #line hidden #line 51 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 51 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@"(DslModeling::Store store, params DslModeling::PropertyAssignment[] propertyAssignments) : this(store != null ? store.DefaultPartitionForClass(DomainClassId) : null, propertyAssignments) { } /// <summary> /// Constructor /// </summary> /// <param name=""partition"">Partition where new element is to be created.</param> /// <param name=""propertyAssignments"">List of domain property id/value pairs to set once the element is created.</param> public " ); #line default #line hidden #line 61 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 61 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@"(DslModeling::Partition partition, params DslModeling::PropertyAssignment[] propertyAssignments) : base(partition, propertyAssignments) { } #endregion /// <summary> /// Gets the unique name of this diagram. /// </summary> public override string UniqueName { get { return """ ); #line default #line hidden #line 74 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 74 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.Name)); #line default #line hidden #line 74 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\";\r\n\t\t\t}\r\n }\r\n\t\t\r\n /// <summary>\r\n /// Initialize.\r\n " + "/// </summary>\r\n public override void Initialize()\r\n {\r\n"); #line default #line hidden #line 83 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" if (diagram is DesignerDiagramClass) { foreach (DiagramClass d in (diagram as DesignerDiagramClass).IncludedDiagramClasses) { #line default #line hidden #line 88 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\t\t\tAddIncludedDiagram(new "); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.ModelContext.MetaModel.Namespace)); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("."); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 89 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("(this.Store));\r\n"); #line default #line hidden #line 90 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } } #line default #line hidden #line 94 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(" }\r\n"); #line default #line hidden #line 96 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" if (CodeGenerationUtilities.NeedsLinkRules(dm)) { #line default #line hidden #line 100 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@" /// <summary> /// Gets the relationship shapes factory helper. Needs to be derived in the actual instance class. /// </summary> /// <returns></returns> public override DslEditorDiagrams::ModelLinkAddRuleForRSShapes.RSShapesFactoryHelper GetRSShapesFactoryHelper() { return "); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("LinkForShapesAdded."); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 108 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("ElementForShapesFactoryHelper.Instance;\r\n }\r\n"); #line default #line hidden #line 110 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } if (CodeGenerationUtilities.NeedsMappingLinkRules(dm)) { #line default #line hidden #line 114 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@" /// <summary> /// Gets the mapping relationship shapes factory helper. Needs to be derived in the actual instance class. /// </summary> /// <returns></returns> public override DslEditorDiagrams::ModelLinkAddRuleForMappingRSShapes.RSShapesFactoryHelper GetMappingRSShapesFactoryHelper() { return "); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("MappingLinkForShapesAdded."); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 122 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("ElementForShapesFactoryHelper.Instance;\r\n }\r\n"); #line default #line hidden #line 124 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } #line default #line hidden #line 126 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write(@" #region Methods /// <summary> /// Adds a proto element to the current element. /// </summary> /// <param name=""protoElement"">Proto element representation of the element that is to be added.</param> /// <param name=""groupMerger""> /// Group merger class used to track id mapping, merge errors/warnings and /// postprocess merging by rebuilding reference relationships. /// </param> /// <param name=""isRoot"">Root element?</param> public override void ModelMerge(DslEditorModeling::ModelProtoElement protoElement, DslEditorModeling::ModelProtoGroupMerger groupMerger, bool isRoot) { "); #line default #line hidden #line 140 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" if (!diagram.IsCustom) { #line default #line hidden #line 143 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\t\t\t// TODO\t\t\t\r\n"); #line default #line hidden #line 145 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" } #line default #line hidden #line 147 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" this.Write("\t\t}\r\n\t\t#endregion\r\n\t}\r\n}\r\n"); #line default #line hidden #line 152 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\DiagramGenerator.tt" }
public string GenerateDiagramViewModel(MetaModel dm, DiagramClass diagramClass) { this.GenerationEnvironment = null; this.GenerateDiagramViewModelInternal(dm, diagramClass); return this.GenerationEnvironment.ToString(); }
/// <summary> /// Constructor. This view model constructed with 'bHookUpEvents=true' does react on model changes. /// </summary> /// <param name="viewModelStore">The store this view model belongs to.</param> /// <param name="element">Element represented by this view model.</param> public DiagramClassSelectableViewModel(ViewModelStore viewModelStore, DiagramClass element) : base(viewModelStore, element) { this.diagramClass = element; }
private void GenerateDiagramViewModelInternal(MetaModel dm, DiagramClass diagramClass) { string baseClass = "DslEditorViewDiagrams::BaseDiagramSurfaceViewModel"; if (diagramClass is SpecificElementsDiagram) { if ((diagramClass as SpecificElementsDiagram).DomainClasses.Count == 0) { return; } baseClass = "DslEditorViewDiagrams.Templates.SpecificElementsDesignerSurfaceViewModel"; } else if (diagramClass is DesignerSurfaceDiagram) { baseClass = "DslEditorViewDiagrams.Templates.DesignerSurfaceViewModel"; } else if (diagramClass is ModalDiagram) { if ((diagramClass as ModalDiagram).DomainClass == null) { return; } baseClass = "DslEditorViewDiagrams.Templates.ModalDesignerSurfaceViewModel"; } #line default #line hidden #line 38 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\r\nnamespace "); #line default #line hidden #line 40 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Namespace)); #line default #line hidden #line 40 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(".ViewModel\r\n{\r\n\t/// <summary>\r\n\t/// This class represents the default diagram sur" + "face view model of the "); #line default #line hidden #line 43 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.ApplicationName)); #line default #line hidden #line 43 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(".\r\n\t/// \r\n\t/// Double-derived class to allow easier code customization.\r\n\t/// </s" + "ummary>\r\n\tpublic partial class "); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceViewModel : "); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 47 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceViewModelBase\r\n\t{\r\n\t\t#region Constructor\r\n"); #line default #line hidden #line 50 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.PushIndent("\t\t"); CreateConstructor(dm, diagramClass, false); this.PopIndent(); #line default #line hidden #line 54 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\r\n\t\t#endregion\r\n\t}\r\n\t\r\n\t/// <summary>\r\n\t/// This class represents the default di" + "agram surface view model of the "); #line default #line hidden #line 59 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.ApplicationName)); #line default #line hidden #line 59 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(".\r\n\t/// \r\n\t/// This is the abstract base class.\r\n\t/// </summary>\r\n\tpublic abstrac" + "t partial class "); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dm.Name)); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceViewModelBase : "); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(baseClass)); #line default #line hidden #line 63 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\r\n\t{\r\n\t\t#region Constructor\r\n"); #line default #line hidden #line 66 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.PushIndent("\t\t"); CreateConstructor(dm, diagramClass, true); this.PopIndent(); #line default #line hidden #line 70 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\r\n\t\t#endregion\t\t\r\n"); #line default #line hidden #line 72 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if (diagramClass is ModalDiagram) { ModalDiagram diagram = diagramClass as ModalDiagram; #line default #line hidden #line 76 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t#region ModalDiagram\r\n\t\t/// <summary>\r\n /// Unique name of the property " + "grid docking window.\r\n /// </summary>\r\n public override string Doc" + "kingPaneName\r\n {\r\n get { return \""); #line default #line hidden #line 83 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 83 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceDockWindowPane\" + this.NameExtension; }\r\n }\r\n\r\n /// <summary" + ">\r\n /// Title of the docking windo.\r\n /// </summary>\r\n publ" + "ic override string DockingPaneTitle\r\n {\r\n get { return \""); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Title)); #line default #line hidden #line 91 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\" + this.TitleExtension; }\r\n }\t\t\r\n\t\t\r\n /// <summary>\r\n /// I" + "nitialization routine.\r\n /// </summary>\r\n protected override void " + "Initialize()\r\n {\r\n base.Initialize();\r\n\r\n"); #line default #line hidden #line 101 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if (diagram.DomainClass.GenerateSpecificViewModel) { string dClass = diagram.DomainClass.GetMetaModel().Namespace + ".ViewModel." + diagram.DomainClass.Name + "SpecificViewModel"; #line default #line hidden #line 105 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\tthis.HostedElementVM = new "); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dClass)); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(this.ViewModelStore, (this.HostedElement as "); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagram.DomainClass.GetFullName(true))); #line default #line hidden #line 106 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("));\r\n"); #line default #line hidden #line 107 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else { #line default #line hidden #line 111 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\tthis.HostedElementVM = new DslEditorViewModels::BaseModelElementViewModel(this" + ".ViewModelStore, this.HostedElement, true);\r\n"); #line default #line hidden #line 113 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 115 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" }\t\t\r\n\t\t#endregion\r\n"); #line default #line hidden #line 118 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if (diagramClass is SpecificElementsDiagram) { SpecificElementsDiagram diagram = diagramClass as SpecificElementsDiagram; #line default #line hidden #line 123 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@" #region SpecificElementsDiagram private SelectedElementEnum selectedElementEnum = SelectedElementEnum.___None___; /// <summary> /// Enumeration identifying the currently selected element type. /// </summary> public enum SelectedElementEnum { ___None___, "); #line default #line hidden #line 134 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" foreach (DomainClass d in diagram.DomainClasses) { #line default #line hidden #line 137 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t"); #line default #line hidden #line 138 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 138 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(",\r\n"); #line default #line hidden #line 139 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 141 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t}\r\n\t\t\r\n\t\t/// <summary>\r\n\t\t/// Gets the selected element type.\r\n\t\t/// </summary>" + "\r\n\t\tpublic SelectedElementEnum SelectedElementType\r\n\t\t{\r\n\t\t\tget\r\n\t\t\t{\r\n\t\t\t\tretur" + "n this.selectedElementEnum;\r\n\t\t\t}\r\n\t\t\tprivate set\r\n\t\t\t{\r\n\t\t\t\tif( this.selectedEl" + "ementEnum != value )\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.selectedElementEnum = value;\r\n\t\t\t\t\tOnProp" + "ertyChanged(\"SelectedElementType\");\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t/// <summary>\r\n " + " /// Called if the hosted element was deleted.\r\n /// </summary>\r\n " + " /// <param name=\"args\">Data</param>\r\n protected override void OnHosted" + "ElementDeleted(DslModeling::ElementDeletedEventArgs args)\r\n {\r\n " + " base.OnHostedElementDeleted(args);\r\n\t\t\t\r\n\t\t\tthis.SelectedElementType = Selecte" + "dElementEnum.___None___;\r\n }\r\n\t\t\r\n /// <summary>\r\n /// Call" + "back from SelectionChangedEvent.\r\n /// </summary>\r\n /// <param nam" + "e=\"eventArgs\">SelectionChangedEventArgs.</param>\r\n protected override voi" + "d ReactOnViewSelection(DslEditorEvents::SelectionChangedEventArgs eventArgs)\r\n " + " {\r\n\t\t\tbase.ReactOnViewSelection(eventArgs);\r\n\r\n\t\t\t// update selection\r\n " + " if (this.IsInitialized && this.IsDockingPaneVisible)\r\n\t\t\t\tDslEditorView" + "Models.Threading.DispatcherExtensions.InvokeAsynchronouslyInBackground(\r\n " + " System.Windows.Threading.Dispatcher.CurrentDispatcher, new System.Ac" + "tion(UpdateView));\r\n }\r\n\t\t\t\t\r\n /// <summary>\r\n /// Initiali" + "ze.\r\n /// </summary>\r\n protected override void Initialize()\r\n " + " {\r\n base.Initialize();\r\n\r\n if (this.SelectedItemsCollec" + "tion != null)\r\n\t\t\t\tDslEditorViewModels.Threading.DispatcherExtensions.InvokeAsyn" + "chronouslyInBackground(\r\n System.Windows.Threading.Dispatcher." + "CurrentDispatcher, new System.Action(UpdateView));\r\n }\r\n\t\t\r\n\t\t/// <summar" + "y>\r\n /// Updates the view based on the current selection.\r\n /// </" + "summary>\r\n\t\tprotected virtual void UpdateView()\r\n\t\t{\r\n\t\t\tif( this.SelectedItemsC" + "ollection.Count != 1 )\r\n\t\t\t\treturn;\r\n\t\t\t\t\r\n\t\t\tDslEditorModeling::DomainModelElem" + "ent element = this.SelectedItemsCollection[0] as DslEditorModeling::DomainModelE" + "lement;\r\n\t\t\tif( element != null )\r\n\t\t\t{\r\n"); #line default #line hidden #line 211 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" foreach (DomainClass d in diagram.DomainClasses) { #line default #line hidden #line 214 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\tif( element is "); #line default #line hidden #line 215 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.GetFullName(true))); #line default #line hidden #line 215 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" )\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.SelectedElementType = SelectedElementEnum."); #line default #line hidden #line 217 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.Name)); #line default #line hidden #line 217 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(";\r\n"); #line default #line hidden #line 218 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if (d.GenerateSpecificViewModel) { string dClass = d.GetMetaModel().Namespace + ".ViewModel." + d.Name + "SpecificViewModel"; #line default #line hidden #line 222 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\t\tif( HostedElement != null )\r\n\t\t\t\t\t\tif( HostedElement.Element.Id == element.I" + "d )\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\tHostedElement = new "); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(dClass)); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("(this.ViewModelStore, (element as "); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(d.GetFullName(true))); #line default #line hidden #line 227 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("));\r\n"); #line default #line hidden #line 228 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else { #line default #line hidden #line 232 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\t\tHostedElement = new DslEditorViewModels::BaseModelElementViewModel(this.View" + "ModelStore, element, true);\r\n"); #line default #line hidden #line 234 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 236 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t\t\t\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n"); #line default #line hidden #line 240 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 242 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@" } } /// <summary> /// Reset. /// </summary> protected override void Reset() { this.SelectedElementType = SelectedElementEnum.___None___; base.Reset(); } /// <summary> /// Visibility changed. /// </summary> /// <param name=""bVisible""></param> protected override void OnVisibilityChanged(bool bVisible) { base.OnVisibilityChanged(bVisible); if (this.IsDockingPaneVisible && this.IsInitialized) if (this.SelectedItemsCollection != null) DslEditorViewModels.Threading.DispatcherExtensions.InvokeAsynchronouslyInBackground( System.Windows.Threading.Dispatcher.CurrentDispatcher, new System.Action(UpdateView)); } #endregion "); #line default #line hidden #line 271 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } else if (diagramClass is DesignerSurfaceDiagram) { #line default #line hidden #line 275 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t#region DesignerSurfaceDiagram\r\n\t\t\r\n\t\t#endregion\r\n"); #line default #line hidden #line 279 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 281 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\t\t#region IDockableViewModel\r\n"); #line default #line hidden #line 283 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" if (!(diagramClass is ModalDiagram)) { #line default #line hidden #line 286 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(" \t/// <summary>\r\n /// Unique name of the property grid docking window" + ".\r\n /// </summary>\r\n public override string DockingPaneName\r\n " + " {\r\n get { return \""); #line default #line hidden #line 292 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Name)); #line default #line hidden #line 292 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("SurfaceDockWindowPane\"; }\r\n }\r\n\r\n /// <summary>\r\n /// Title " + "of the docking windo.\r\n /// </summary>\r\n public override string Do" + "ckingPaneTitle\r\n {\r\n get { return \""); #line default #line hidden #line 300 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(this.ToStringHelper.ToStringWithCulture(diagramClass.Title)); #line default #line hidden #line 300 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write("\"; }\r\n }\r\n"); #line default #line hidden #line 302 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" } #line default #line hidden #line 304 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" this.Write(@" /// <summary> /// Gets the docking pane style. /// </summary> public override global::Tum.PDE.ToolFramework.Modeling.Visualization.ViewModel.DockingPaneStyle DockingPaneStyle { get { return global::Tum.PDE.ToolFramework.Modeling.Visualization.ViewModel.DockingPaneStyle.DockedInDocumentPane; } } #endregion } } "); #line default #line hidden #line 320 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\ViewModel\TemplatedDiagramGeneratorHelper.tt" }