internal void BuildModelFromOutput() { _model.Nodes.Clear(); var sortedDict = LayoutOutput.Classes.OrderByDescending(key => key.Value.Size); foreach (var nameLayoutPair in sortedDict) { if (nameLayoutPair.Value.Members.Count > 0 && nameLayoutPair.Value.Size > 0) { var newNode = new LayoutTreeNode() { Text = nameLayoutPair.Key, Size = nameLayoutPair.Value.Size.ToString(), Padding = nameLayoutPair.Value.TotalAlignmentPadding.ToString(), }; _model.Root.Nodes.Add(newNode); foreach (var layoutClassMember in nameLayoutPair.Value.Members) { var memberNode = new LayoutTreeNode() { Text = layoutClassMember.Name, Size = layoutClassMember.Size.ToString(), }; string memberType = layoutClassMember.Type; if (memberType != null) { if (LayoutOutput.Classes.ContainsKey(memberType)) { memberNode.Padding = "(" + LayoutOutput.Classes[memberType].TotalAlignmentPadding + ")"; } memberNode.TypeName = memberType; } newNode.Nodes.Add(memberNode); } } } }
internal void BuildModelFromOutput() { _model.Nodes.Clear(); var SortedDict = LayoutOutput.Classes.OrderByDescending(key => key.Value.Size); foreach (var nameLayoutPair in SortedDict) { if (nameLayoutPair.Value.Members.Count > 0 && nameLayoutPair.Value.Size > 0) { LayoutTreeNode NewNode = new LayoutTreeNode(); NewNode.Text = nameLayoutPair.Key; NewNode.Size = nameLayoutPair.Value.Size.ToString(); NewNode.Padding = nameLayoutPair.Value.TotalAlignmentPadding.ToString(); _model.Root.Nodes.Add(NewNode); foreach ( var LayoutClassMember in nameLayoutPair.Value.Members ) { LayoutTreeNode MemberNode = new LayoutTreeNode(); MemberNode.Text = LayoutClassMember.Name; MemberNode.Size = LayoutClassMember.Size.ToString(); string MemberType = LayoutClassMember.Type; if ( MemberType != null ) { if (LayoutOutput.Classes.ContainsKey(MemberType)) { MemberNode.Padding = "(" + LayoutOutput.Classes[MemberType].TotalAlignmentPadding + ")"; } MemberNode.TypeName = MemberType; } NewNode.Nodes.Add(MemberNode); } } } }