Пример #1
0
        public void Poll()
        {
            // get the key board input and directs it to the active application
            var key = keyboard.GetKeyPressed();

            if (key == null)
            {
                return;
            }

            if (key.KeyType == KeyType.NoKey)
            {
                return;
            }

            if (key.KeyType == KeyType.F1)
            {
                SetCurrentApplication(currentApp);
                return;
            }
            if (key.KeyType == KeyType.F2)
            {
                ConsoleManager.Controller.Active = ConsoleManager.Controller.Boot;
                return;
            }
            else if (key.KeyType == KeyType.F3)
            {
                ConsoleManager.Controller.Active = ConsoleManager.Controller.Debug;
                return;
            }

            var input = currentApp.Console.Input as AppInputStream;

            if (input != null)
            {
                input.Write((byte)key.Character);

                if (currentApp.Console.EnableEcho)
                {
                    var output = currentApp.Console.Output as AppOutputStream;

                    output?.WriteByte((byte)key.Character);
                }
            }
        }