/// <summary> /// Create a shape of the given type for the given element type. /// </summary> /// <param name="modelElement">Model element.</param> /// <param name="shapeTypeId">Shape type id.</param> /// <param name="assignments">Properties for the shape.</param> /// <returns>Shape if one could be created. Null otherwise.</returns> public override DslModeling.ModelElement CreateShapeForElement(System.Guid shapeTypeId, DslModeling::ModelElement modelElement, params DslModeling::PropertyAssignment[] assignments) { DslEditorDiagrams::NodeShape nodeShape = null; if (createShapeMap == null) { createShapeMap = new global::System.Collections.Generic.Dictionary <global::System.Guid, int>(15); createShapeMap.Add(global::Tum.VModellXT.RolleDependencyShape.DomainClassId, 0); createShapeMap.Add(global::Tum.VModellXT.DisziplinDependencyShape.DomainClassId, 1); createShapeMap.Add(global::Tum.VModellXT.ErzAbhDependencyShape.DomainClassId, 2); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufbausteinShape.DomainClassId, 3); createShapeMap.Add(global::Tum.VModellXT.Dynamik.StartpunktShape.DomainClassId, 4); createShapeMap.Add(global::Tum.VModellXT.Dynamik.EndepunktShape.DomainClassId, 5); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufentscheidungspunktShape.DomainClassId, 6); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufbausteinpunktShape.DomainClassId, 7); createShapeMap.Add(global::Tum.VModellXT.Dynamik.SplitShape.DomainClassId, 8); createShapeMap.Add(global::Tum.VModellXT.Dynamik.SplitEingangShape.DomainClassId, 9); createShapeMap.Add(global::Tum.VModellXT.Dynamik.SplitAusgangShape.DomainClassId, 10); createShapeMap.Add(global::Tum.VModellXT.Dynamik.JoinShape.DomainClassId, 11); createShapeMap.Add(global::Tum.VModellXT.Dynamik.JoinEingangShape.DomainClassId, 12); createShapeMap.Add(global::Tum.VModellXT.Dynamik.JoinAusgangShape.DomainClassId, 13); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufbausteinspezifikationShape.DomainClassId, 14); } int index; if (!createShapeMap.TryGetValue(shapeTypeId, out index)) { throw new global::System.ArgumentException("Unrecognized shape type " + shapeTypeId.ToString()); } switch (index) { case 0: nodeShape = new global::Tum.VModellXT.RolleDependencyShape(modelElement.Store, assignments); break; case 1: nodeShape = new global::Tum.VModellXT.DisziplinDependencyShape(modelElement.Store, assignments); break; case 2: nodeShape = new global::Tum.VModellXT.ErzAbhDependencyShape(modelElement.Store, assignments); break; case 3: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufbausteinShape(modelElement.Store, assignments); break; case 4: nodeShape = new global::Tum.VModellXT.Dynamik.StartpunktShape(modelElement.Store, assignments); break; case 5: nodeShape = new global::Tum.VModellXT.Dynamik.EndepunktShape(modelElement.Store, assignments); break; case 6: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufentscheidungspunktShape(modelElement.Store, assignments); break; case 7: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufbausteinpunktShape(modelElement.Store, assignments); break; case 8: nodeShape = new global::Tum.VModellXT.Dynamik.SplitShape(modelElement.Store, assignments); break; case 9: nodeShape = new global::Tum.VModellXT.Dynamik.SplitEingangShape(modelElement.Store, assignments); break; case 10: nodeShape = new global::Tum.VModellXT.Dynamik.SplitAusgangShape(modelElement.Store, assignments); break; case 11: nodeShape = new global::Tum.VModellXT.Dynamik.JoinShape(modelElement.Store, assignments); break; case 12: nodeShape = new global::Tum.VModellXT.Dynamik.JoinEingangShape(modelElement.Store, assignments); break; case 13: nodeShape = new global::Tum.VModellXT.Dynamik.JoinAusgangShape(modelElement.Store, assignments); break; case 14: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufbausteinspezifikationShape(modelElement.Store, assignments); break; } if (nodeShape == null) { throw new System.InvalidOperationException("Couldn't create shape of type " + shapeTypeId.ToString() + " for model element " + modelElement.ToString()); } nodeShape.Element = modelElement; return(nodeShape); }
/// <summary> /// Create a shape of the given type for the given element type. /// </summary> /// <param name="modelElement">Model element.</param> /// <param name="shapeTypeId">Shape type id.</param> /// <param name="assignments">Properties for the shape.</param> /// <returns>Shape if one could be created. Null otherwise.</returns> public override DslModeling.ModelElement CreateShapeForElement(System.Guid shapeTypeId, DslModeling::ModelElement modelElement, params DslModeling::PropertyAssignment[] assignments) { DslEditorDiagrams::NodeShape nodeShape = null; if( createShapeMap == null ) { createShapeMap = new global::System.Collections.Generic.Dictionary<global::System.Guid, int>(15); createShapeMap.Add(global::Tum.VModellXT.RolleDependencyShape.DomainClassId, 0); createShapeMap.Add(global::Tum.VModellXT.DisziplinDependencyShape.DomainClassId, 1); createShapeMap.Add(global::Tum.VModellXT.ErzAbhDependencyShape.DomainClassId, 2); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufbausteinShape.DomainClassId, 3); createShapeMap.Add(global::Tum.VModellXT.Dynamik.StartpunktShape.DomainClassId, 4); createShapeMap.Add(global::Tum.VModellXT.Dynamik.EndepunktShape.DomainClassId, 5); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufentscheidungspunktShape.DomainClassId, 6); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufbausteinpunktShape.DomainClassId, 7); createShapeMap.Add(global::Tum.VModellXT.Dynamik.SplitShape.DomainClassId, 8); createShapeMap.Add(global::Tum.VModellXT.Dynamik.SplitEingangShape.DomainClassId, 9); createShapeMap.Add(global::Tum.VModellXT.Dynamik.SplitAusgangShape.DomainClassId, 10); createShapeMap.Add(global::Tum.VModellXT.Dynamik.JoinShape.DomainClassId, 11); createShapeMap.Add(global::Tum.VModellXT.Dynamik.JoinEingangShape.DomainClassId, 12); createShapeMap.Add(global::Tum.VModellXT.Dynamik.JoinAusgangShape.DomainClassId, 13); createShapeMap.Add(global::Tum.VModellXT.Dynamik.AblaufbausteinspezifikationShape.DomainClassId, 14); } int index; if (!createShapeMap.TryGetValue(shapeTypeId, out index)) throw new global::System.ArgumentException("Unrecognized shape type " + shapeTypeId.ToString()); switch (index) { case 0: nodeShape = new global::Tum.VModellXT.RolleDependencyShape(modelElement.Store, assignments); break; case 1: nodeShape = new global::Tum.VModellXT.DisziplinDependencyShape(modelElement.Store, assignments); break; case 2: nodeShape = new global::Tum.VModellXT.ErzAbhDependencyShape(modelElement.Store, assignments); break; case 3: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufbausteinShape(modelElement.Store, assignments); break; case 4: nodeShape = new global::Tum.VModellXT.Dynamik.StartpunktShape(modelElement.Store, assignments); break; case 5: nodeShape = new global::Tum.VModellXT.Dynamik.EndepunktShape(modelElement.Store, assignments); break; case 6: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufentscheidungspunktShape(modelElement.Store, assignments); break; case 7: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufbausteinpunktShape(modelElement.Store, assignments); break; case 8: nodeShape = new global::Tum.VModellXT.Dynamik.SplitShape(modelElement.Store, assignments); break; case 9: nodeShape = new global::Tum.VModellXT.Dynamik.SplitEingangShape(modelElement.Store, assignments); break; case 10: nodeShape = new global::Tum.VModellXT.Dynamik.SplitAusgangShape(modelElement.Store, assignments); break; case 11: nodeShape = new global::Tum.VModellXT.Dynamik.JoinShape(modelElement.Store, assignments); break; case 12: nodeShape = new global::Tum.VModellXT.Dynamik.JoinEingangShape(modelElement.Store, assignments); break; case 13: nodeShape = new global::Tum.VModellXT.Dynamik.JoinAusgangShape(modelElement.Store, assignments); break; case 14: nodeShape = new global::Tum.VModellXT.Dynamik.AblaufbausteinspezifikationShape(modelElement.Store, assignments); break; } if( nodeShape == null ) throw new System.InvalidOperationException("Couldn't create shape of type " + shapeTypeId.ToString() + " for model element " + modelElement.ToString()); nodeShape.Element = modelElement; return nodeShape; }