Ejemplo n.º 1
0
 private void handleKeys(Glfw.Window window, Glfw.KeyCode key, int scan, Glfw.KeyAction action, Glfw.KeyMods mods)
 {
     if (key == Glfw.KeyCode.Left)
     {
         InputEvent(new InputEvent
         {
             FootSwitchEvent = new FootSwitchEvent
             {
                 FootSwitch = FootSwitch.Left,
                 Action     = (FootSwitchAction)(int)action // conveniently, the enum values line up.
             }
         });
     }
     else if (key == Glfw.KeyCode.Right)
     {
         InputEvent(new InputEvent
         {
             FootSwitchEvent = new FootSwitchEvent
             {
                 FootSwitch = FootSwitch.Right,
                 Action     = (FootSwitchAction)(int)action // conveniently, the enum values line up.
             }
         });
     }
 }
Ejemplo n.º 2
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.Space:
            {
                Glfw.GetWindowPos(window, out int xpos, out int ypos);
                Glfw.SetWindowPos(window, xpos, ypos);
                break;
            }

            case Glfw.KeyCode.Escape:
            {
                Glfw.SetWindowShouldClose(window, true);
                break;
            }

            default:
                break;
            }
        }
Ejemplo n.º 3
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.Escape:
            {
                Glfw.SetWindowShouldClose(window, true);
                break;
            }

            case Glfw.KeyCode.Space:
            {
                m_CurIconColor = (m_CurIconColor + 1) % 5;
                SetIcon(window, m_CurIconColor);
                break;
            }

            case Glfw.KeyCode.X:
            {
                Glfw.SetWindowIcon(window, null);
                break;
            }

            default:
                break;
            }
        }
Ejemplo n.º 4
0
 static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
 {
     if (state == Glfw.InputState.Press && key == Glfw.KeyCode.Escape)
     {
         Glfw.SetWindowShouldClose(window, true);
     }
 }
Ejemplo n.º 5
0
        internal InputState(Glfw.KeyCode key)
        {
            KeyboardKey = key;
            MouseButton = null;

            IsDown      = false;
            WasPressed  = false;
            WasReleased = false;
            HoldTime    = 0;

            WasPreviouslyDown = false;
        }
Ejemplo n.º 6
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.Space:
                Glfw.SetTime(0.0);
                break;
            }
        }
Ejemplo n.º 7
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.Q:
            case Glfw.KeyCode.Escape:
                Glfw.SetWindowShouldClose(window, true);
                break;
            }
        }
Ejemplo n.º 8
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.Escape:
            {
                Glfw.SetWindowShouldClose(window, true);
                break;
            }

            case Glfw.KeyCode.V:
            {
                if (mods == Glfw.KeyMods.Control)
                {
                    string str = Glfw.GetClipboardString(window);
                    if (!string.IsNullOrEmpty(str))
                    {
                        Log("Clipboard contains \"{0}\"", str);
                    }
                    else
                    {
                        Log("Clipboard does not contain a string");
                    }
                }
                break;
            }

            case Glfw.KeyCode.C:
            {
                if (mods == Glfw.KeyMods.Control)
                {
                    const string str = "Hello GLFW World!";
                    Glfw.SetClipboardString(window, str);
                    Log("Setting clipboard to \"{0}\"", str);
                }
                break;
            }

            default:
                break;
            }
        }
Ejemplo n.º 9
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.Up:
            {
                if (swapInterval + 1 > swapInterval)
                {
                    SetSwapInterval(window, swapInterval + 1);
                }
                break;
            }

            case Glfw.KeyCode.Down:
            {
                if (swapTear)
                {
                    if (swapInterval - 1 < swapInterval)
                    {
                        SetSwapInterval(window, swapInterval - 1);
                    }
                }
                else
                {
                    if (swapInterval - 1 >= 0)
                    {
                        SetSwapInterval(window, swapInterval - 1);
                    }
                }
                break;
            }

            case Glfw.KeyCode.Escape:
            {
                Glfw.SetWindowShouldClose(window, true);
                break;
            }

            default:
                break;
            }
        }
Ejemplo n.º 10
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            var    slot = m_Slots[window];
            string name = Glfw.GetKeyName(key, scancode);

            if (!string.IsNullOrEmpty(name))
            {
                Log("{0} to {1} at {2}: Key 0x{3} Scancode 0x{4} ({5}) ({6}) ({7}) was {8}",
                    m_Counter++, slot.Number, Glfw.GetTime(), (int)key, scancode,
                    GetKeyName(key),
                    name,
                    GetModsName(mods),
                    GetActioName(state));
            }
            else
            {
                Log("{0} to {1} at {2}: Key 0x{3} Scancode 0x{4} ({5}) ({6}) was {7}",
                    m_Counter++, slot.Number, Glfw.GetTime(), (int)key, scancode,
                    GetKeyName(key),
                    GetModsName(mods),
                    GetActioName(state));
            }

            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.C:
            {
                slot.Closeable = !slot.Closeable;

                Log("(( closing {0} ))", slot.Closeable ? "enabled" : "disabled");
                break;
            }

            default:
                break;
            }
        }
Ejemplo n.º 11
0
        /// <summary>
        /// The callback method for the keyboard, will set the key from a keycode and a state
        /// </summary>
        /// <param name="window"></param>
        /// <param name="key"></param>
        /// <param name="scancode"></param>
        /// <param name="state"></param>
        /// <param name="mods"></param>
        private void KeyboardCallBack(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            int keyCode = (int)key;

            switch (state)
            {
            case Glfw.InputState.Repeat:
                Input.SetKey(keyCode, Input.InputAction.Repeated);
                break;

            case Glfw.InputState.Press:
                Input.SetKey(keyCode, Input.InputAction.Pressed);
                break;

            case Glfw.InputState.Release:
                Input.SetKey(keyCode, Input.InputAction.Released);
                break;
            }

            Debug.Log("Input Keyboard " + key, Debug.DebugLayer.Input, Debug.DebugLevel.Information);
        }
Ejemplo n.º 12
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.Escape:
            {
                Glfw.SetWindowShouldClose(window, true);
                break;
            }

            case Glfw.KeyCode.NumpadAdd:
            case Glfw.KeyCode.Up:
            case Glfw.KeyCode.Q:
            {
                SetGamma(window, m_GammaValue + kStepSize);
                break;
            }

            case Glfw.KeyCode.NumpadSubtract:
            case Glfw.KeyCode.Down:
            case Glfw.KeyCode.W:
            {
                if (m_GammaValue - kStepSize > 0f)
                {
                    SetGamma(window, m_GammaValue - kStepSize);
                }

                break;
            }

            default:
                break;
            }
        }
Ejemplo n.º 13
0
        private static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            var engineWindow = dictionary[window];

            if (state == Glfw.InputState.Press || state == Glfw.InputState.Repeat)
            {
                engineWindow.KeyPressed?.Invoke(engineWindow, new KeyEventArgs()
                {
                    Key       = key,
                    ScanCode  = scancode,
                    Modifiers = mods
                });
            }
            else if (state == Glfw.InputState.Release)
            {
                engineWindow.KeyReleased?.Invoke(engineWindow, new KeyEventArgs()
                {
                    Key       = key,
                    ScanCode  = scancode,
                    Modifiers = mods
                });
            }
        }
Ejemplo n.º 14
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            Log("{0} Key %s",
                Glfw.GetTime(),
                state == Glfw.InputState.Press ? "pressed" : "released");

            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.I:
                Glfw.IconifyWindow(window);
                break;

            case Glfw.KeyCode.M:
                Glfw.MaximizeWindow(window);
                break;

            case Glfw.KeyCode.R:
                Glfw.RestoreWindow(window);
                break;

            case Glfw.KeyCode.Escape:
                Glfw.SetWindowShouldClose(window, true);
                break;

            case Glfw.KeyCode.F11:
            case Glfw.KeyCode.Enter:
            {
                if (mods != Glfw.KeyMods.Alt)
                {
                    return;
                }

                if (Glfw.GetWindowMonitor(window))
                {
                    Glfw.SetWindowMonitor(window, Glfw.Monitor.None,
                                          m_WindowedXPos, m_WindowedYPos,
                                          m_WindowedWidth, m_WindowedHeight,
                                          0);
                }
                else
                {
                    var monitor = Glfw.GetPrimaryMonitor();
                    if (monitor)
                    {
                        var mode = Glfw.GetVideoMode(monitor);
                        Glfw.GetWindowPos(window, out m_WindowedXPos, out m_WindowedYPos);
                        Glfw.GetWindowSize(window, out m_WindowedWidth, out m_WindowedHeight);
                        Glfw.SetWindowMonitor(window, monitor,
                                              0, 0, mode.Width, mode.Height,
                                              mode.RefreshRate);
                    }
                }

                break;
            }
            }
        }
Ejemplo n.º 15
0
        static void KeyCallback(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState state, Glfw.KeyMods mods)
        {
            if (state != Glfw.InputState.Press)
            {
                return;
            }

            switch (key)
            {
            case Glfw.KeyCode.A:
            {
                animateCursor = !animateCursor;
                if (!animateCursor)
                {
                    Glfw.SetCursor(window, Glfw.Cursor.None);
                }

                break;
            }

            case Glfw.KeyCode.Escape:
            {
                Glfw.SetWindowShouldClose(window, true);
                break;
            }

            case Glfw.KeyCode.N:
            {
                Glfw.SetInputMode(window, Glfw.InputMode.Cursor, Glfw.CursorMode.Normal);
                Log("(( cursor is normal ))");
                break;
            }

            case Glfw.KeyCode.D:
            {
                Glfw.SetInputMode(window, Glfw.InputMode.Cursor, Glfw.CursorMode.Disabled);
                Log("(( cursor is disabled ))");
                break;
            }

            case Glfw.KeyCode.H:
            {
                Glfw.SetInputMode(window, Glfw.InputMode.Cursor, Glfw.CursorMode.Hidden);
                Log("(( cursor is hidden ))");
                break;
            }

            case Glfw.KeyCode.Space:
            {
                swapInterval = 1 - swapInterval;
                Log("(( swap interval: {0} ))", swapInterval);
                Glfw.SwapInterval(swapInterval);
                break;
            }

            case Glfw.KeyCode.W:
            {
                waitEvents = !waitEvents;
                Log("(( {0}ing for events ))", waitEvents ? "wait" : "poll");
                break;
            }

            case Glfw.KeyCode.T:
            {
                trackCursor = !trackCursor;
                break;
            }

            case Glfw.KeyCode.Alpha0:
            {
                Glfw.SetCursor(window, Glfw.Cursor.None);
                break;
            }

            case Glfw.KeyCode.Alpha1:
            {
                Glfw.SetCursor(window, standardCursors[0]);
                break;
            }

            case Glfw.KeyCode.Alpha2:
            {
                Glfw.SetCursor(window, standardCursors[1]);
                break;
            }

            case Glfw.KeyCode.Alpha3:
            {
                Glfw.SetCursor(window, standardCursors[2]);
                break;
            }

            case Glfw.KeyCode.Alpha4:
            {
                Glfw.SetCursor(window, standardCursors[3]);
                break;
            }

            case Glfw.KeyCode.Alpha5:
            {
                Glfw.SetCursor(window, standardCursors[4]);
                break;
            }

            case Glfw.KeyCode.Alpha6:
            {
                Glfw.SetCursor(window, standardCursors[5]);
                break;
            }

            default:
                break;
            }
        }
Ejemplo n.º 16
0
        static string GetKeyName(Glfw.KeyCode key)
        {
            switch (key)
            {
            // Printable keys
            case Glfw.KeyCode.A:                       return("A");

            case Glfw.KeyCode.B:                       return("B");

            case Glfw.KeyCode.C:                       return("C");

            case Glfw.KeyCode.D:                       return("D");

            case Glfw.KeyCode.E:                       return("E");

            case Glfw.KeyCode.F:                       return("F");

            case Glfw.KeyCode.G:                       return("G");

            case Glfw.KeyCode.H:                       return("H");

            case Glfw.KeyCode.I:                       return("I");

            case Glfw.KeyCode.J:                       return("J");

            case Glfw.KeyCode.K:                       return("K");

            case Glfw.KeyCode.L:                       return("L");

            case Glfw.KeyCode.M:                       return("M");

            case Glfw.KeyCode.N:                       return("N");

            case Glfw.KeyCode.O:                       return("O");

            case Glfw.KeyCode.P:                       return("P");

            case Glfw.KeyCode.Q:                       return("Q");

            case Glfw.KeyCode.R:                       return("R");

            case Glfw.KeyCode.S:                       return("S");

            case Glfw.KeyCode.T:                       return("T");

            case Glfw.KeyCode.U:                       return("U");

            case Glfw.KeyCode.V:                       return("V");

            case Glfw.KeyCode.W:                       return("W");

            case Glfw.KeyCode.X:                       return("X");

            case Glfw.KeyCode.Y:                       return("Y");

            case Glfw.KeyCode.Z:                       return("Z");

            case Glfw.KeyCode.Alpha1:                  return("1");

            case Glfw.KeyCode.Alpha2:                  return("2");

            case Glfw.KeyCode.Alpha3:                  return("3");

            case Glfw.KeyCode.Alpha4:                  return("4");

            case Glfw.KeyCode.Alpha5:                  return("5");

            case Glfw.KeyCode.Alpha6:                  return("6");

            case Glfw.KeyCode.Alpha7:                  return("7");

            case Glfw.KeyCode.Alpha8:                  return("8");

            case Glfw.KeyCode.Alpha9:                  return("9");

            case Glfw.KeyCode.Alpha0:                  return("0");

            case Glfw.KeyCode.Space:                   return("SPACE");

            case Glfw.KeyCode.Minus:                   return("MINUS");

            case Glfw.KeyCode.Equal:                   return("EQUAL");

            case Glfw.KeyCode.LeftBracket:             return("LEFT BRACKET");

            case Glfw.KeyCode.RightBracket:            return("RIGHT BRACKET");

            case Glfw.KeyCode.Backslash:               return("BACKSLASH");

            case Glfw.KeyCode.SemiColon:               return("SEMICOLON");

            case Glfw.KeyCode.Apostrophe:              return("APOSTROPHE");

            case Glfw.KeyCode.GraveAccent:             return("GRAVE ACCENT");

            case Glfw.KeyCode.Comma:                   return("COMMA");

            case Glfw.KeyCode.Period:                  return("PERIOD");

            case Glfw.KeyCode.Slash:                   return("SLASH");

            case Glfw.KeyCode.World1:                  return("WORLD 1");

            case Glfw.KeyCode.World2:                  return("WORLD 2");

            // Function keys
            case Glfw.KeyCode.Escape:                  return("ESCAPE");

            case Glfw.KeyCode.F1:                      return("F1");

            case Glfw.KeyCode.F2:                      return("F2");

            case Glfw.KeyCode.F3:                      return("F3");

            case Glfw.KeyCode.F4:                      return("F4");

            case Glfw.KeyCode.F5:                      return("F5");

            case Glfw.KeyCode.F6:                      return("F6");

            case Glfw.KeyCode.F7:                      return("F7");

            case Glfw.KeyCode.F8:                      return("F8");

            case Glfw.KeyCode.F9:                      return("F9");

            case Glfw.KeyCode.F10:                     return("F10");

            case Glfw.KeyCode.F11:                     return("F11");

            case Glfw.KeyCode.F12:                     return("F12");

            case Glfw.KeyCode.F13:                     return("F13");

            case Glfw.KeyCode.F14:                     return("F14");

            case Glfw.KeyCode.F15:                     return("F15");

            case Glfw.KeyCode.F16:                     return("F16");

            case Glfw.KeyCode.F17:                     return("F17");

            case Glfw.KeyCode.F18:                     return("F18");

            case Glfw.KeyCode.F19:                     return("F19");

            case Glfw.KeyCode.F20:                     return("F20");

            case Glfw.KeyCode.F21:                     return("F21");

            case Glfw.KeyCode.F22:                     return("F22");

            case Glfw.KeyCode.F23:                     return("F23");

            case Glfw.KeyCode.F24:                     return("F24");

            case Glfw.KeyCode.F25:                     return("F25");

            case Glfw.KeyCode.Up:                      return("UP");

            case Glfw.KeyCode.Down:                    return("DOWN");

            case Glfw.KeyCode.Left:                    return("LEFT");

            case Glfw.KeyCode.Right:                   return("RIGHT");

            case Glfw.KeyCode.LeftShift:               return("LEFT SHIFT");

            case Glfw.KeyCode.RightShift:              return("RIGHT SHIFT");

            case Glfw.KeyCode.LeftControl:             return("LEFT CONTROL");

            case Glfw.KeyCode.RightControl:            return("RIGHT CONTROL");

            case Glfw.KeyCode.LeftAlt:                 return("LEFT ALT");

            case Glfw.KeyCode.RightAlt:                return("RIGHT ALT");

            case Glfw.KeyCode.Tab:                     return("TAB");

            case Glfw.KeyCode.Enter:                   return("ENTER");

            case Glfw.KeyCode.Backspace:               return("BACKSPACE");

            case Glfw.KeyCode.Insert:                  return("INSERT");

            case Glfw.KeyCode.Delete:                  return("DELETE");

            case Glfw.KeyCode.PageUp:                  return("PAGE UP");

            case Glfw.KeyCode.PageDown:                return("PAGE DOWN");

            case Glfw.KeyCode.Home:                    return("HOME");

            case Glfw.KeyCode.End:                     return("END");

            case Glfw.KeyCode.Numpad0:                 return("KEYPAD 0");

            case Glfw.KeyCode.Numpad1:                 return("KEYPAD 1");

            case Glfw.KeyCode.Numpad2:                 return("KEYPAD 2");

            case Glfw.KeyCode.Numpad3:                 return("KEYPAD 3");

            case Glfw.KeyCode.Numpad4:                 return("KEYPAD 4");

            case Glfw.KeyCode.Numpad5:                 return("KEYPAD 5");

            case Glfw.KeyCode.Numpad6:                 return("KEYPAD 6");

            case Glfw.KeyCode.Numpad7:                 return("KEYPAD 7");

            case Glfw.KeyCode.Numpad8:                 return("KEYPAD 8");

            case Glfw.KeyCode.Numpad9:                 return("KEYPAD 9");

            case Glfw.KeyCode.NumpadDivide:            return("KEYPAD DIVIDE");

            case Glfw.KeyCode.NumpadMultiply:          return("KEYPAD MULTPLY");

            case Glfw.KeyCode.NumpadSubtract:          return("KEYPAD SUBTRACT");

            case Glfw.KeyCode.NumpadAdd:               return("KEYPAD ADD");

            case Glfw.KeyCode.NumpadDecimal:           return("KEYPAD DECIMAL");

            case Glfw.KeyCode.NumpadEqual:             return("KEYPAD EQUAL");

            case Glfw.KeyCode.NumpadEnter:             return("KEYPAD ENTER");

            case Glfw.KeyCode.PrintScreen:             return("PRINT SCREEN");

            case Glfw.KeyCode.NumLock:                 return("NUM LOCK");

            case Glfw.KeyCode.CapsLock:                return("CAPS LOCK");

            case Glfw.KeyCode.ScrollLock:              return("SCROLL LOCK");

            case Glfw.KeyCode.Pause:                   return("PAUSE");

            case Glfw.KeyCode.LeftSuper:               return("LEFT SUPER");

            case Glfw.KeyCode.RightSuper:              return("RIGHT SUPER");

            case Glfw.KeyCode.Menu:                    return("MENU");

            default:                                   return("UNKNOWN");
            }
        }
Ejemplo n.º 17
0
        static NkKeys ConvertToNkKey(Glfw.KeyCode KCode, Glfw.KeyMods Mods)
        {
            switch (KCode)
            {
            case Glfw.KeyCode.RightShift:
            case Glfw.KeyCode.LeftShift:
                return(NkKeys.Shift);

            case Glfw.KeyCode.LeftControl:
            case Glfw.KeyCode.RightControl:
                return(NkKeys.Ctrl);

            case Glfw.KeyCode.Delete:
                return(NkKeys.Del);

            case Glfw.KeyCode.Enter:
            case Glfw.KeyCode.NumpadEnter:
                return(NkKeys.Enter);

            case Glfw.KeyCode.Tab:
                return(NkKeys.Tab);

            case Glfw.KeyCode.Backspace:
                return(NkKeys.Backspace);

            case Glfw.KeyCode.Up:
                return(NkKeys.Up);

            case Glfw.KeyCode.Down:
                return(NkKeys.Down);

            case Glfw.KeyCode.Left:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.TextWordLeft);
                }
                return(NkKeys.Left);

            case Glfw.KeyCode.Right:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.TextWordRight);
                }
                return(NkKeys.Right);

            case Glfw.KeyCode.Home:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.TextStart);
                }
                return(NkKeys.LineStart);

            case Glfw.KeyCode.End:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.TextEnd);
                }
                return(NkKeys.LineEnd);

            case Glfw.KeyCode.PageUp:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.ScrollStart);
                }
                return(NkKeys.ScrollUp);

            case Glfw.KeyCode.PageDown:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.ScrollEnd);
                }
                return(NkKeys.ScrollDown);

            case Glfw.KeyCode.A:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.TextSelectAll);
                }
                return(NkKeys.None);

            case Glfw.KeyCode.Z:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.TextUndo);
                }
                return(NkKeys.None);

            case Glfw.KeyCode.Y:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.TextRedo);
                }
                return(NkKeys.None);

            case Glfw.KeyCode.C:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.Copy);
                }
                return(NkKeys.None);

            case Glfw.KeyCode.V:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.Paste);
                }
                return(NkKeys.None);

            case Glfw.KeyCode.X:
                if (Mods == Glfw.KeyMods.Control)
                {
                    return(NkKeys.Cut);
                }
                return(NkKeys.None);

            default:
                return(NkKeys.None);
            }
        }
Ejemplo n.º 18
0
 private void KeyInput(Glfw.Window window, Glfw.KeyCode key, int scancode, Glfw.InputState action, Glfw.KeyMods mods)
 {
     UpdateKeyStatus((Key)key, action == Glfw.InputState.Press || action == Glfw.InputState.Repeat);
 }
Ejemplo n.º 19
0
 public static bool GetKey(Glfw.KeyCode Key)
 {
     return(Glfw.GetKey(Window, (int)Key));
 }