public ClassDiagram(GroupingSetting grouping, MembersFormat format, IEnumerable<Figure> figures)
 {
     majorVersion = 1;
     minorVersion = 1;
     groupSetting = grouping;
     membersFormat = format;
     CreatedFigure += OnCreatedHandler;
     FigureAdded += OnFigureAddedInheritanceHandler;
     FigureRemoved += OnFigureRemovedInheritanceHandler;
 }
        public TypeFigure()
            : base()
        {
            Spacing = 1.5;
            members = new List<MemberFigure> ();
            Header = new HeaderFigure ();
            MemberCompartments = new VStackFigure ();
            expandHandle = new ToggleButtonHandle (this, new AbsoluteLocator (10, 15));
            expandHandle.Toggled += OnToggled;
            SetAttribute (FigureAttribute.Draggable, true);
            SetAttribute (FigureAttribute.Selectable, true);
            grouping = GroupingSetting.Member;
            MembersFormat = MembersFormat.FullSignature;

            Add (Header);
            Add (MemberCompartments);
            Collapsed = true;
        }
 public ClassDiagram(GroupingSetting grouping, MembersFormat format)
     : this(grouping, format, null)
 {
 }
 private void DeserializeGrouping(XAttribute grouping)
 {
     if (grouping != null) {
         GroupingSetting value;
         if (Enum.TryParse (grouping.Value, out value)) {
             Grouping = value;
         } else {
             throw new DeserializationException ("Couldn't parse Grouping value: " + grouping.Value);
         }
     }
 }
 public GroupFormatVisitor(GroupingSetting grouping)
 {
     this.grouping = grouping;
 }