namespace XFESystem.Console;
public readonly record struct TerminalStyle(
TerminalColor Foreground,
TerminalColor Background,
bool Bold = false,
bool Dim = false,
bool Italic = false,
bool Underline = false,
bool Inverse = false,
bool Hidden = false,
bool Strike = false)
{
public static TerminalStyle Default => new(TerminalColor.ThemeForeground, TerminalColor.ThemeBackground);
public TerminalColor DisplayForeground => Hidden ? DisplayBackground : Inverse ? Background : Foreground;
public TerminalColor DisplayBackground => Inverse ? Foreground : Background;
}
namespace XFESystem.Console;
public readonly record struct TerminalStyle(
TerminalColor Foreground,
TerminalColor Background,
bool Bold = false,
bool Dim = false,
bool Italic = false,
bool Underline = false,
bool Inverse = false,
bool Hidden = false,
bool Strike = false)
{
public static TerminalStyle Default => new(TerminalColor.ThemeForeground, TerminalColor.ThemeBackground);
public TerminalColor DisplayForeground => Hidden ? DisplayBackground : Inverse ? Background : Foreground;
public TerminalColor DisplayBackground => Inverse ? Foreground : Background;
}