public virtual void AddRSShapesForElement(DomainModelLink modelElement)
            {
                if (modelElement == null)
                {
                    return;
                }

                DiagramDomainDataDirectory data = modelElement.Store.DomainDataAdvDirectory.ResolveExtensionDirectory <DiagramDomainDataDirectory>();

                if (data == null)
                {
                    throw new ArgumentNullException("DiagramDomainDataDirectory");
                }

                List <Guid> shapes = data.GetShapeTypesForElement(modelElement.GetDomainClassId());

                if (shapes != null)
                {
                    if (shapes.Count > 0)
                    {
                        DomainModelElement source = DomainRoleInfo.GetSourceRolePlayer(modelElement) as DomainModelElement;
                        DomainModelElement target = DomainRoleInfo.GetTargetRolePlayer(modelElement) as DomainModelElement;
                        foreach (Guid shape in shapes)
                        {
                            AddRSShapesForElement(source, target, modelElement, shape);
                        }
                    }
                }
            }
Example #2
0
            public void DeleteShapesForElement(DomainModelLink element)
            {
                if (element == null)
                {
                    return;
                }

                DomainModelLink            link = element;
                DiagramDomainDataDirectory data = link.Store.DomainDataAdvDirectory.ResolveExtensionDirectory <DiagramDomainDataDirectory>();

                DomainModelElement m      = DomainRoleInfo.GetSourceRolePlayer(link) as DomainModelElement;
                List <Guid>        shapes = data.GetShapeTypesForElement(m.GetDomainClassId());

                if (shapes == null)
                {
                    return;
                }
                foreach (Guid g in shapes)
                {
                    if (data.MappingRelationshipShapeInfos.ContainsKey(g))
                    {
                        this.DeleteShapesForElement(m.Store, m.Id, g);
                        return;
                    }
                }
            }
            public virtual void AddRSShapesForElement(DomainModelLink modelElement)
            {
                if (modelElement == null)
                    return;

                DomainModelElement m = DomainRoleInfo.GetSourceRolePlayer(modelElement) as DomainModelElement;
                AddMappingRSShapesForElement(m);
            }
            /// <summary>
            /// Called whenever a role player changed ever has occured.
            /// </summary>
            /// <param name="e"></param>
            public void OnRolePlayerChanged(RolePlayerChangedEventArgs e)
            {
                DomainModelLink con = e.ElementLink as DomainModelLink;

                if (con != null)
                {
                    this.deletionHelper.DeleteShapesForElement(con);
                    this.factoryHelper.AddRSShapesForElement(con);
                }
            }
            public void DeleteShapesForElement(DomainModelLink element)
            {
                if (element == null)
                    return;

                DomainModelLink link = element;
                DiagramDomainDataDirectory data = link.Store.DomainDataAdvDirectory.ResolveExtensionDirectory<DiagramDomainDataDirectory>();

                if (data.HasShapeForElement(link.GetDomainClassId()))
                    this.DeleteShapesForElement(link.Store, link.Id);
            }
Example #6
0
            public virtual void AddRSShapesForElement(DomainModelLink modelElement)
            {
                if (modelElement == null)
                {
                    return;
                }

                DomainModelElement m = DomainRoleInfo.GetSourceRolePlayer(modelElement) as DomainModelElement;

                AddMappingRSShapesForElement(m);
            }
Example #7
0
            /// <summary>
            /// Adds shapes for a given element.
            /// </summary>
            /// <param name="con"></param>
            internal void AddShapesForElement(DomainModelLink con)
            {
                if (con == null)
                {
                    return;
                }

                DomainModelElement parent = DomainRoleInfo.GetSourceRolePlayer(con) as DomainModelElement;
                DomainModelElement child  = DomainRoleInfo.GetTargetRolePlayer(con) as DomainModelElement;

                AddShapesForElement(parent, child);
            }
            /// <summary>
            /// Called whenever a role player changed ever has occured.
            /// </summary>
            /// <param name="e"></param>
            public void OnRolePlayerChanged(RolePlayerChangedEventArgs e)
            {
                DomainModelLink con = e.ElementLink as DomainModelLink;

                if (con != null)
                {
                    if (con.IsEmbedding)
                    {
                        this.factoryHelper.AddShapesForElement(con);
                    }
                }
            }
            public void DeleteShapesForElement(DomainModelLink element)
            {
                if (element == null)
                {
                    return;
                }

                DomainModelLink            link = element;
                DiagramDomainDataDirectory data = link.Store.DomainDataAdvDirectory.ResolveExtensionDirectory <DiagramDomainDataDirectory>();

                if (data.HasShapeForElement(link.GetDomainClassId()))
                {
                    this.DeleteShapesForElement(link.Store, link.Id);
                }
            }
            public void DeleteShapesForElement(DomainModelLink element)
            {
                if (element == null)
                    return;

                DomainModelLink link = element;
                DiagramDomainDataDirectory data = link.Store.DomainDataAdvDirectory.ResolveExtensionDirectory<DiagramDomainDataDirectory>();

                DomainModelElement m = DomainRoleInfo.GetSourceRolePlayer(link) as DomainModelElement;
                List<Guid> shapes = data.GetShapeTypesForElement(m.GetDomainClassId());
                if (shapes == null)
                    return;
                foreach (Guid g in shapes)
                    if (data.MappingRelationshipShapeInfos.ContainsKey(g))
                    {
                        this.DeleteShapesForElement(m.Store, m.Id, g);
                        return;
                    }
            }
            public virtual void AddRSShapesForElement(DomainModelLink modelElement)
            {
                if (modelElement == null)
                    return;

                DiagramDomainDataDirectory data = modelElement.Store.DomainDataAdvDirectory.ResolveExtensionDirectory<DiagramDomainDataDirectory>();
                if (data == null)
                    throw new ArgumentNullException("DiagramDomainDataDirectory");

                List<Guid> shapes = data.GetShapeTypesForElement(modelElement.GetDomainClassId());
                if( shapes != null )
                    if (shapes.Count > 0)
                    {
                        DomainModelElement source = DomainRoleInfo.GetSourceRolePlayer(modelElement) as DomainModelElement;
                        DomainModelElement target = DomainRoleInfo.GetTargetRolePlayer(modelElement) as DomainModelElement;
                        foreach (Guid shape in shapes)
                        {
                            AddRSShapesForElement(source, target, modelElement, shape);
                        }
                    }
            }
            /// <summary>
            /// Adds shapes for a given element.
            /// </summary>
            /// <param name="con"></param>
            internal void AddShapesForElement(DomainModelLink con)
            {
                if (con == null)
                    return;

                DomainModelElement parent = DomainRoleInfo.GetSourceRolePlayer(con) as DomainModelElement;
                DomainModelElement child = DomainRoleInfo.GetTargetRolePlayer(con) as DomainModelElement;
                AddShapesForElement(parent, child);
            }