mirror of
https://github.com/nsnail/spectre.console.git
synced 2025-06-20 05:48:14 +08:00
41 lines
1.4 KiB
C#
41 lines
1.4 KiB
C#
using System;
|
|
|
|
namespace Spectre.Console.Rendering
|
|
{
|
|
/// <summary>
|
|
/// Represents a rounded border.
|
|
/// </summary>
|
|
public sealed class RoundedBorder : Border
|
|
{
|
|
/// <inheritdoc/>
|
|
public override Border? SafeBorder { get; } = Border.Square;
|
|
|
|
/// <inheritdoc/>
|
|
protected override string GetBoxPart(BorderPart part)
|
|
{
|
|
return part switch
|
|
{
|
|
BorderPart.HeaderTopLeft => "╭",
|
|
BorderPart.HeaderTop => "─",
|
|
BorderPart.HeaderTopSeparator => "┬",
|
|
BorderPart.HeaderTopRight => "╮",
|
|
BorderPart.HeaderLeft => "│",
|
|
BorderPart.HeaderSeparator => "│",
|
|
BorderPart.HeaderRight => "│",
|
|
BorderPart.HeaderBottomLeft => "├",
|
|
BorderPart.HeaderBottom => "─",
|
|
BorderPart.HeaderBottomSeparator => "┼",
|
|
BorderPart.HeaderBottomRight => "┤",
|
|
BorderPart.CellLeft => "│",
|
|
BorderPart.CellSeparator => "│",
|
|
BorderPart.CellRight => "│",
|
|
BorderPart.FooterBottomLeft => "╰",
|
|
BorderPart.FooterBottom => "─",
|
|
BorderPart.FooterBottomSeparator => "┴",
|
|
BorderPart.FooterBottomRight => "╯",
|
|
_ => throw new InvalidOperationException("Unknown box part."),
|
|
};
|
|
}
|
|
}
|
|
}
|