Example #1
0
        public void Run()
        {
            ListWindows();
            Console.WriteLine("Welcome to Rude Window Manager. Not.\n"
                              + "I'm only gonna say this once. You press H for help.\n"
                              + "That's 'H' on your keyboard ye dimwit. ");


            bool run = true;

            while (run)
            {
                Console.WriteLine("Whatcha want?");

                var c = Console.ReadKey(intercept: true);
                switch (c.Key)
                {
                case ConsoleKey.X:
                    run = false;
                    break;

                case ConsoleKey.H:
                    PrintHelp();
                    break;

                case ConsoleKey.U:
                    Console.Write("Watcha want unpinned? (index) ");
                    try
                    {
                        var idx = int.Parse(Console.ReadLine());
                        _wm.SetWindowNotOnTop(idx);
                        Console.Clear();
                        ListWindows();
                        ConsoleEx.WriteLine("Done mate. Piss off.", ConsoleColor.Green);
                    }
                    catch
                    {
                        ConsoleEx.WriteLine("Bad input mate. Expecting an integer.", ConsoleColor.Red);
                    }
                    break;

                case ConsoleKey.P:
                    Console.Write("Watcha wanna pin? (index) ");
                    try
                    {
                        var idx = int.Parse(Console.ReadLine());
                        _wm.SetWindowOnTop(idx);
                        Console.Clear();
                        ListWindows();
                        ConsoleEx.WriteLine("Done mate. Piss off.", ConsoleColor.Green);
                    }
                    catch
                    {
                        ConsoleEx.WriteLine("Bad input mate. Expecting an integer.", ConsoleColor.Red);
                    }
                    break;

                case ConsoleKey.R:
                    Console.Clear();
                    ListWindows();
                    break;

                case ConsoleKey.Enter:
                    break;

                default:
                    ConsoleEx.WriteLine($"I DON'T SPEAK MORONESE!!! WHAT'S A `{c.KeyChar}`?", ConsoleColor.Red);
                    break;
                }
            }
        }