mirror of
https://github.com/nsnail/spectre.console.git
synced 2025-04-13 15:42:50 +08:00

* Add width to panels * Add height to panels * Replace RenderContext with RenderOptions * Remove exclusivity from alternative buffer * Add Layout widget * Add Align widget
42 lines
1.2 KiB
C#
42 lines
1.2 KiB
C#
using Spectre.Console;
|
|
|
|
namespace Panels;
|
|
|
|
public static class Program
|
|
{
|
|
public static void Main()
|
|
{
|
|
var content = new Markup(
|
|
"[underline]I[/] heard [underline on blue]you[/] like panels\n\n\n\n" +
|
|
"So I put a panel in a panel").Centered();
|
|
|
|
AnsiConsole.Write(
|
|
new Panel(
|
|
new Panel(content)
|
|
.Border(BoxBorder.Rounded)));
|
|
|
|
// Left adjusted panel with text
|
|
AnsiConsole.Write(
|
|
new Panel(new Text("Left adjusted\nLeft").LeftJustified())
|
|
.Expand()
|
|
.SquareBorder()
|
|
.Header("[red]Left[/]"));
|
|
|
|
// Centered ASCII panel with text
|
|
AnsiConsole.Write(
|
|
new Panel(new Text("Centered\nCenter").Centered())
|
|
.Expand()
|
|
.AsciiBorder()
|
|
.Header("[green]Center[/]")
|
|
.HeaderAlignment(Justify.Center));
|
|
|
|
// Right adjusted, rounded panel with text
|
|
AnsiConsole.Write(
|
|
new Panel(new Text("Right adjusted\nRight").RightJustified())
|
|
.Expand()
|
|
.RoundedBorder()
|
|
.Header("[blue]Right[/]")
|
|
.HeaderAlignment(Justify.Right));
|
|
}
|
|
}
|