Exemple #1
0
 private ConsoleTableBuilder()
 {
     Column      = new List <object>();
     Rows        = new List <List <object> >();
     TableFormat = ConsoleTableBuilderFormat.Default;
     Options     = new ConsoleTableBuilderOption();
 }
Exemple #2
0
        public static ConsoleTableBuilder WithFormat(this ConsoleTableBuilder builder, ConsoleTableBuilderFormat format)
        {
            // reset CharMapPositions
            builder.CharMapPositionStore = null;
            builder.TableFormat          = format;

            switch (builder.TableFormat)
            {
            case ConsoleTableBuilderFormat.Default:
                builder.CharMapPositionStore = new Dictionary <CharMapPositions, char>
                {
                    { CharMapPositions.TopLeft, '-' },
                    { CharMapPositions.TopCenter, '-' },
                    { CharMapPositions.TopRight, '-' },
                    { CharMapPositions.MiddleLeft, '-' },
                    { CharMapPositions.MiddleCenter, '-' },
                    { CharMapPositions.MiddleRight, '-' },
                    { CharMapPositions.BottomLeft, '-' },
                    { CharMapPositions.BottomCenter, '-' },
                    { CharMapPositions.BottomRight, '-' },
                    { CharMapPositions.BorderTop, '-' },
                    { CharMapPositions.BorderLeft, '|' },
                    { CharMapPositions.BorderRight, '|' },
                    { CharMapPositions.BorderBottom, '-' },
                    { CharMapPositions.DividerX, '-' },
                    { CharMapPositions.DividerY, '|' },
                };
                break;

            case ConsoleTableBuilderFormat.MarkDown:
                builder.CharMapPositionStore = new Dictionary <CharMapPositions, char>
                {
                    { CharMapPositions.DividerY, '|' },
                    { CharMapPositions.BorderLeft, '|' },
                    { CharMapPositions.BorderRight, '|' },
                };

                builder.HeaderCharMapPositionStore = new Dictionary <HeaderCharMapPositions, char>
                {
                    { HeaderCharMapPositions.BorderBottom, '-' },
                    { HeaderCharMapPositions.BottomLeft, '|' },
                    { HeaderCharMapPositions.BottomCenter, '|' },
                    { HeaderCharMapPositions.BottomRight, '|' },
                    { HeaderCharMapPositions.BorderLeft, '|' },
                    { HeaderCharMapPositions.BorderRight, '|' },
                    { HeaderCharMapPositions.Divider, '|' },
                };
                break;

            case ConsoleTableBuilderFormat.Alternative:
                builder.CharMapPositionStore = new Dictionary <CharMapPositions, char>
                {
                    { CharMapPositions.TopLeft, '+' },
                    { CharMapPositions.TopCenter, '+' },
                    { CharMapPositions.TopRight, '+' },
                    { CharMapPositions.MiddleLeft, '+' },
                    { CharMapPositions.MiddleCenter, '+' },
                    { CharMapPositions.MiddleRight, '+' },
                    { CharMapPositions.BottomLeft, '+' },
                    { CharMapPositions.BottomCenter, '+' },
                    { CharMapPositions.BottomRight, '+' },
                    { CharMapPositions.BorderTop, '-' },
                    { CharMapPositions.BorderRight, '|' },
                    { CharMapPositions.BorderBottom, '-' },
                    { CharMapPositions.BorderLeft, '|' },
                    { CharMapPositions.DividerX, '-' },
                    { CharMapPositions.DividerY, '|' },
                };
                break;

            case ConsoleTableBuilderFormat.Minimal:
                builder.CharMapPositionStore = new Dictionary <CharMapPositions, char> {
                };

                builder.HeaderCharMapPositionStore = new Dictionary <HeaderCharMapPositions, char>
                {
                    { HeaderCharMapPositions.BorderBottom, '-' }
                };

                builder.PaddingLeft  = string.Empty;
                builder.PaddingRight = " ";
                break;

            default:
                break;
            }

            return(builder);
        }
Exemple #3
0
 public static ConsoleTableBuilder WithFormat(this ConsoleTableBuilder builder, ConsoleTableBuilderFormat format)
 {
     builder.TableFormat = format;
     return(builder);
 }