private void keyCallback(GLFWWindow window1, GLFWKeyCode key, int scancode, GLFWInputState state, GLFWKeyMods mods) { switch (state) { case GLFW.GLFW.InputState.Press: var gdxkey = getGdxKeyCode(key); eventQueue.keyDown(gdxkey); pressedKeys++; keyJustPressed = true; justPressedKeys[(int)gdxkey] = true; window.getGraphics().requestRendering(); lastCharacter = (char)0; char character = characterForKeyCode(gdxkey); if (character != 0) { charCallback(window1, (uint)character); } break; case GLFW.GLFW.InputState.Release: pressedKeys--; window.getGraphics().requestRendering(); eventQueue.keyUp(getGdxKeyCode(key)); break; case GLFW.GLFW.InputState.Repeat: pressedKeys--; window.getGraphics().requestRendering(); eventQueue.keyUp(getGdxKeyCode(key)); break; } }
private void mouseButtonCallback(GLFWWindow window1, GLFWMouseButton button, GLFWInputState state, GLFWKeyMods mods) { var gdxButton = toGdxButton(button); if (gdxButton == Buttons.UKNOWN) { return; } if (state == GLFW.GLFW.InputState.Press) { mousePressed++; _justTouched = true; window.getGraphics().requestRendering(); eventQueue.touchDown(mouseX, mouseY, 0, gdxButton); } else { mousePressed = Math.Max(0, mousePressed - 1); window.getGraphics().requestRendering(); eventQueue.touchUp(mouseX, mouseY, 0, gdxButton); } }