Pickaxe.Program.OnSelectResults C# (CSharp) Method

OnSelectResults() private static method

private static OnSelectResults ( RuntimeTable result ) : void
result RuntimeTable
return void
        private static void OnSelectResults(RuntimeTable<ResultRow> result)
        {
            lock (ConsoleAppender.ConsoleWriteLock)
            {
                ConsoleAppender.PlatConsole.MoveCursor(ConsoleAppender.PlatConsole.StartLine + 3);

                var lengths = Measure(result);

                //+--+-------------------+------------+
                //|  |  (No column name) | .content a |
                //+--+-------------------+------------+

                var border = Border(lengths);
                ConsoleAppender.PlatConsole.Print(border);
                var values = result.Columns().ToList();
                values.Insert(0, "");
                ConsoleAppender.PlatConsole.Print(Values(lengths, values.ToArray()));
                ConsoleAppender.PlatConsole.Print(border.ToString());

                for (int row = 0; row < result.RowCount; row++)
                {
                    var valueList = new List<string>();
                    for (int col = 0; col < lengths.Count - 1; col++)
                        valueList.Add(result[row][col].ToString());

                    valueList.Insert(0, (row + 1).ToString());
                    ConsoleAppender.PlatConsole.Print(Values(lengths, valueList.ToArray()));
                }
                ConsoleAppender.PlatConsole.Print(border.ToString());

                ConsoleAppender.PlatConsole.StartLine = ConsoleAppender.PlatConsole.CurrentLine+1;
            }
        }