teamlead-dashboard/src/TUI/Program.cs

62 lines
1.3 KiB
C#
Raw Normal View History

2023-08-03 19:21:06 +00:00
using TUI.Controls;
2023-08-29 04:40:28 +00:00
using TUI.Domain;
2023-08-03 19:21:06 +00:00
Console.Clear();
Console.CursorVisible = false;
var settings = Settings.Init();
var display = new Display();
display.OpenDeps(settings.Projects[0]);
2023-08-29 04:40:28 +00:00
var key = new ConsoleKeyInfo('1', ConsoleKey.NoName, false, false, false);
var waitCommand = true;
2023-08-03 19:21:06 +00:00
do
{
2023-08-29 04:40:28 +00:00
if (key.Key == ConsoleKey.Q && !display.CommandLine.IsFocused)
2023-08-03 19:21:06 +00:00
{
2023-08-29 04:40:28 +00:00
waitCommand = false;
continue;
2023-08-03 19:21:06 +00:00
}
2023-08-29 04:40:28 +00:00
if (display.CommandLine.IsFocused)
{
switch (key.Key)
{
case ConsoleKey.Escape:
display.CommandLine.IsFocused = false;
break;
default:
Console.Write(key.KeyChar);
break;
}
}
else
{
switch (key.KeyChar)
{
case ':':
display.OpenCommandLine();
break;
}
switch (key.Key)
{
case ConsoleKey.DownArrow:
display.Next();
break;
case ConsoleKey.UpArrow:
display.Previous();
break;
case ConsoleKey.E:
display.ToggleHeader();
break;
}
}
key = Console.ReadKey(true);
} while (waitCommand);
2023-08-03 19:21:06 +00:00
Console.Clear();