-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconsole.cs
72 lines (63 loc) · 2.69 KB
/
console.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
// Copyright (C) 2023 Jefferson Montgomery
// SPDX-License-Identifier: MIT
using System;
namespace reaper
{
public static class ColorConsole
{
public static ConsoleColor Gray = ConsoleColor.DarkGray;
public static ConsoleColor Blue = ConsoleColor.Blue;
public static ConsoleColor Green = ConsoleColor.Green;
public static ConsoleColor Red = ConsoleColor.Red;
public static ConsoleColor Yellow = ConsoleColor.DarkYellow;
public static void Initialize()
{
// Adjust colors if background conflicts
switch (Console.BackgroundColor) {
case ConsoleColor.DarkBlue:
case ConsoleColor.DarkCyan:
case ConsoleColor.Blue:
case ConsoleColor.Cyan:
Blue = ConsoleColor.Black;
break;
case ConsoleColor.DarkGreen:
case ConsoleColor.Green:
Green = ConsoleColor.Black;
break;
case ConsoleColor.DarkRed:
case ConsoleColor.Red:
Red = ConsoleColor.Black;
break;
case ConsoleColor.DarkYellow:
case ConsoleColor.Yellow:
Yellow = ConsoleColor.Black;
break;
case ConsoleColor.DarkGray:
Gray = ConsoleColor.Gray;
Blue = ConsoleColor.DarkBlue;
break;
}
}
public static void Write(ConsoleColor color, string msg) { Console.ForegroundColor = color; Console.Write(msg); Console.ResetColor(); }
public static void WriteError(ConsoleColor color, string msg) { Console.ForegroundColor = color; Console.Error.Write(msg); Console.ResetColor(); }
public static void WriteLine(ConsoleColor color, string msg) { Console.ForegroundColor = color; Console.WriteLine(msg); Console.ResetColor(); }
public static void WriteLineError(ConsoleColor color, string msg) { Console.ForegroundColor = color; Console.Error.WriteLine(msg); Console.ResetColor(); }
public static void WriteColorTest()
{
for (int i = 0; i < 16; ++i) {
Console.Write($" {i.ToString().PadLeft(2)}");
}
Console.WriteLine();
for (int i = 0; i < 16; ++i) {
for (int j = 0; j < 16; ++j) {
Console.Write($" {i.ToString().PadLeft(2)}");
Console.ForegroundColor = (ConsoleColor) i;
Console.BackgroundColor = (ConsoleColor) j;
Console.Write(" Hello ");
Console.ResetColor();
}
Console.WriteLine();
}
}
}
}