From 2222d979cc723ee2f3bad92ffe4991d074b2403a Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 23 May 2012 02:37:38 +0100 Subject: refactor: rename ConsoleTable -> ConsoleDisplayTable for clarity --- OpenSim/Framework/Console/ConsoleTable.cs | 139 ------------------------------ 1 file changed, 139 deletions(-) delete mode 100644 OpenSim/Framework/Console/ConsoleTable.cs (limited to 'OpenSim/Framework/Console/ConsoleTable.cs') diff --git a/OpenSim/Framework/Console/ConsoleTable.cs b/OpenSim/Framework/Console/ConsoleTable.cs deleted file mode 100644 index be3025b..0000000 --- a/OpenSim/Framework/Console/ConsoleTable.cs +++ /dev/null @@ -1,139 +0,0 @@ -/* - * Copyright (c) Contributors, http://opensimulator.org/ - * See CONTRIBUTORS.TXT for a full list of copyright holders. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the OpenSimulator Project nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace OpenSim.Framework.Console -{ - /// - /// Used to generated a formatted table for the console. - /// - /// - /// Currently subject to change. If you use this, be prepared to change your code when this class changes. - /// - public class ConsoleTable - { - /// - /// Default number of spaces between table columns. - /// - public const int DefaultTableSpacing = 2; - - /// - /// Table columns. - /// - public List Columns { get; private set; } - - /// - /// Table rows - /// - public List Rows { get; private set; } - - /// - /// Number of spaces to indent the table. - /// - public int Indent { get; set; } - - /// - /// Spacing between table columns - /// - public int TableSpacing { get; set; } - - public ConsoleTable() - { - TableSpacing = DefaultTableSpacing; - Columns = new List(); - Rows = new List(); - } - - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - AddToStringBuilder(sb); - return sb.ToString(); - } - - public void AddToStringBuilder(StringBuilder sb) - { - string formatString = GetFormatString(); -// System.Console.WriteLine("FORMAT STRING [{0}]", formatString); - - // columns - sb.AppendFormat(formatString, Columns.ConvertAll(c => c.Header).ToArray()); - - // rows - foreach (ConsoleTableRow row in Rows) - sb.AppendFormat(formatString, row.Cells.ToArray()); - } - - /// - /// Gets the format string for the table. - /// - private string GetFormatString() - { - StringBuilder formatSb = new StringBuilder(); - - formatSb.Append(' ', Indent); - - for (int i = 0; i < Columns.Count; i++) - { - formatSb.Append(' ', TableSpacing); - - // Can only do left formatting for now - formatSb.AppendFormat("{{{0},-{1}}}", i, Columns[i].Width); - } - - formatSb.Append('\n'); - - return formatSb.ToString(); - } - } - - public struct ConsoleTableColumn - { - public string Header { get; set; } - public int Width { get; set; } - - public ConsoleTableColumn(string header, int width) : this() - { - Header = header; - Width = width; - } - } - - public struct ConsoleTableRow - { - public List Cells { get; private set; } - - public ConsoleTableRow(List cells) : this() - { - Cells = cells; - } - } -} \ No newline at end of file -- cgit v1.1