From e7f497050cc558cbf0f4b79e1a9dd71394131fa4 Mon Sep 17 00:00:00 2001 From: Patrik Svensson Date: Mon, 26 Oct 2020 11:51:35 +0100 Subject: [PATCH] Add row and column accessors for tables and grids --- docs/input/_layout.cshtml | 7 +- docs/input/widgets/calendar.md | 4 +- docs/input/widgets/table.md | 22 ++-- examples/Borders/Program.cs | 1 - src/Spectre.Console.Tests/Unit/GridTests.cs | 2 +- src/Spectre.Console.Tests/Unit/TableTests.cs | 2 +- .../Extensions/CalendarExtensions.cs | 32 ++++++ .../Extensions/ColumnExtensions.cs | 19 ++++ .../Extensions/GridExtensions.cs | 4 +- .../Extensions/PaddableExtensions.cs | 8 +- .../Extensions/PaddingExtensions.cs | 48 +++++++++ .../Extensions/TableExtensions.cs | 20 +++- src/Spectre.Console/IColumn.cs | 5 + src/Spectre.Console/IPaddable.cs | 2 +- .../Internal/Collections/ListWithCallback.cs | 2 +- .../Extensions/EnumerableExtensions.cs | 15 +++ .../Borders/Tables/MarkdownTableBorder.cs | 8 +- .../Rendering/IHasDirtyState.cs | 13 +++ .../Rendering/JustInTimeRenderable.cs | 79 ++++++++++++++ src/Spectre.Console/TableBorder.cs | 2 +- src/Spectre.Console/Widgets/Calendar.cs | 44 +------- src/Spectre.Console/Widgets/Columns.cs | 6 +- src/Spectre.Console/Widgets/Grid.cs | 102 +++++++++++------- src/Spectre.Console/Widgets/GridColumn.cs | 50 ++++++--- src/Spectre.Console/Widgets/GridRow.cs | 56 ++++++++++ src/Spectre.Console/Widgets/Padder.cs | 20 ++-- src/Spectre.Console/Widgets/Panel.cs | 2 +- src/Spectre.Console/Widgets/Table.cs | 40 +++---- src/Spectre.Console/Widgets/TableColumn.cs | 2 +- src/Spectre.Console/Widgets/TableRow.cs | 56 ++++++++++ 30 files changed, 511 insertions(+), 162 deletions(-) create mode 100644 src/Spectre.Console/Extensions/PaddingExtensions.cs create mode 100644 src/Spectre.Console/Rendering/IHasDirtyState.cs create mode 100644 src/Spectre.Console/Rendering/JustInTimeRenderable.cs create mode 100644 src/Spectre.Console/Widgets/GridRow.cs create mode 100644 src/Spectre.Console/Widgets/TableRow.cs diff --git a/docs/input/_layout.cshtml b/docs/input/_layout.cshtml index f8df17b..f90ae5b 100644 --- a/docs/input/_layout.cshtml +++ b/docs/input/_layout.cshtml @@ -130,7 +130,7 @@