private void CreateColumnHeaders(uint column) { _columnHeaders[column] = new ColumnObject(column) { Column = column }; _columnHeaders[column].InsertHorizontalNode(Root.Left, Root); }
private void InsertDoublyLinkedNode(DataObject left, ColumnObject up, DataObject node) { node.InsertHorizontalNode(left.Left, left); node.InsertVerticalNode(up.Up, up); node.Header = up; node.Header.Size++; }
private ColumnObject GetHeuristicColumn() { var maxSize = uint.MaxValue; ColumnObject Object = null; foreach (ColumnObject column in EnumerateNodes(Root, o => o.Right)) { if (column.Size < maxSize) { maxSize = column.Size; Object = column; } } return(Object); }