diff --git a/examples/Panel/Program.cs b/examples/Panel/Program.cs index f219eb3..f605e24 100644 --- a/examples/Panel/Program.cs +++ b/examples/Panel/Program.cs @@ -6,42 +6,38 @@ namespace PanelExample { static void Main(string[] args) { - var content = Text.Markup( + var content = new Markup( "[underline]I[/] heard [underline on blue]you[/] like πŸ“¦\n\n\n\n" + "So I put a πŸ“¦ in a πŸ“¦\n\n" + - "πŸ˜…"); + "πŸ˜…").Centered(); AnsiConsole.Render( new Panel( new Panel(content) { - Alignment = Justify.Center, Border = BorderKind.Rounded })); // Left adjusted panel with text AnsiConsole.Render(new Panel( - new Text("Left adjusted\nLeft")) + new Text("Left adjusted\nLeft").LeftAligned()) { Expand = true, - Alignment = Justify.Left, }); // Centered ASCII panel with text AnsiConsole.Render(new Panel( - new Text("Centered\nCenter")) + new Text("Centered\nCenter").Centered()) { Expand = true, - Alignment = Justify.Center, Border = BorderKind.Ascii, }); // Right adjusted, rounded panel with text AnsiConsole.Render(new Panel( - new Text("Right adjusted\nRight")) + new Text("Right adjusted\nRight").RightAligned()) { Expand = true, - Alignment = Justify.Right, Border = BorderKind.Rounded, }); } diff --git a/src/Spectre.Console.Tests/Unit/PanelTests.cs b/src/Spectre.Console.Tests/Unit/PanelTests.cs index 72ce417..31b792d 100644 --- a/src/Spectre.Console.Tests/Unit/PanelTests.cs +++ b/src/Spectre.Console.Tests/Unit/PanelTests.cs @@ -81,7 +81,7 @@ namespace Spectre.Console.Tests.Unit // Given var console = new PlainConsole(width: 80); var text = new Panel( - Text.Markup("I heard [underline on blue]you[/] like πŸ“¦\n\n\n\nSo I put a πŸ“¦ in a πŸ“¦")); + new Markup("I heard [underline on blue]you[/] like πŸ“¦\n\n\n\nSo I put a πŸ“¦ in a πŸ“¦")); // When console.Render(text); diff --git a/src/Spectre.Console.Tests/Unit/TextTests.cs b/src/Spectre.Console.Tests/Unit/TextTests.cs index f9c2e59..ef9803c 100644 --- a/src/Spectre.Console.Tests/Unit/TextTests.cs +++ b/src/Spectre.Console.Tests/Unit/TextTests.cs @@ -10,20 +10,26 @@ namespace Spectre.Console.Tests.Unit [Fact] public void Should_Consider_The_Longest_Word_As_Minimum_Width() { + // Given var text = new Text("Foo Bar Baz\nQux\nLol mobile"); + // When var result = ((IRenderable)text).Measure(new RenderContext(Encoding.Unicode, false), 80); + // Then result.Min.ShouldBe(6); } [Fact] public void Should_Consider_The_Longest_Line_As_Maximum_Width() { + // Given var text = new Text("Foo Bar Baz\nQux\nLol mobile"); + // When var result = ((IRenderable)text).Measure(new RenderContext(Encoding.Unicode, false), 80); + // Then result.Max.ShouldBe(11); } diff --git a/src/Spectre.Console/Internal/Text/Markup/MarkupParser.cs b/src/Spectre.Console/Internal/Text/Markup/MarkupParser.cs index 3671b87..2d3d816 100644 --- a/src/Spectre.Console/Internal/Text/Markup/MarkupParser.cs +++ b/src/Spectre.Console/Internal/Text/Markup/MarkupParser.cs @@ -6,11 +6,11 @@ namespace Spectre.Console.Internal { internal static class MarkupParser { - public static Text Parse(string text, Style? style = null) + public static Paragraph Parse(string text, Style? style = null) { style ??= Style.Plain; - var result = new Text(); + var result = new Paragraph(); using var tokenizer = new MarkupTokenizer(text); var stack = new Stack