public override void Changed(int subhint, int oldI, object oldVal, RectangleF oldRect, int newI, object newVal, RectangleF newRect)
 {
     base.Changed(subhint, oldI, oldVal, oldRect, newI, newVal, newRect);
     if (subhint == 0x41b)
     {
         GroupShape group1 = base.Parent;
         if (group1 == null)
         {
             return;
         }
         group1.LayoutChildren(null);
     }
     else if (subhint == 0x41c)
     {
         MultiTextNode node1 = base.Parent as MultiTextNode;
         if (node1 != null)
         {
             node1.RemoveOnlyPorts(oldI);
         }
     }
 }
示例#2
0
        protected override void CopyChildren(GroupShape newgroup, CopyDictionary env)
        {
            MultiTextNode node1 = (MultiTextNode)newgroup;

            base.CopyChildren(newgroup, env);
            node1.myLeftPorts  = new ArrayList();
            node1.myRightPorts = new ArrayList();
            node1.myListGroup  = (ListGroup)env[this.myListGroup];
            node1.myTopPort    = (DiagramShape)env[this.myTopPort];
            node1.myBottomPort = (DiagramShape)env[this.myBottomPort];
            for (int num1 = 0; num1 < this.myLeftPorts.Count; num1++)
            {
                DiagramShape obj1 = (DiagramShape)this.myLeftPorts[num1];
                DiagramShape obj2 = (DiagramShape)env[obj1];
                node1.myLeftPorts.Add(obj2);
            }
            for (int num2 = 0; num2 < this.myRightPorts.Count; num2++)
            {
                DiagramShape obj3 = (DiagramShape)this.myRightPorts[num2];
                DiagramShape obj4 = (DiagramShape)env[obj3];
                node1.myRightPorts.Add(obj4);
            }
        }