aboutsummaryrefslogtreecommitdiff
path: root/PortEngine/PortsTerminalAPI.cs
blob: ba59409b3d326802e8b1e665d04371ecf1a75683 (plain) (blame)
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace PortEngine
{
    public class PortsTerminalAPI
    {
        public static void InitializeConsole()
        {
            AppendConsolePrefix();
        }

        public static void AppendConsolePrefix()
        {
            string ConsolePrefix = (Properties.Settings.Default.userDisplayName + "@PortOS:~$ ");

            Console.Write(ConsolePrefix);
        }

        public static void RunCommand(String pendingCommand)
        {
            bool LastCommandWasClear = false;

            switch (pendingCommand)
            {
                case "help":
                    Console.WriteLine("help - lists the commands\r\ntest - displays a test message\r\nclear - clears the terminal" + Environment.NewLine);
                    break;
                case "clear":
                    Console.Clear();
                    LastCommandWasClear = true;
                    break;
                case "test":
                    Console.WriteLine("This is a test!\r\nof the EBS!" + Environment.NewLine);
                    break;  
                default:
                        Console.WriteLine("Syntax error. Reference the command list for commands that exist." + Environment.NewLine);
                    break;
            }

            if (LastCommandWasClear == true)
            {
                LastCommandWasClear = false;
                AppendConsolePrefix();
            }
            else
            {
                Console.WriteLine();
                AppendConsolePrefix();
            }
        }
    }
}