* Added key remapping for GLFW key constants * Rename AppSettings.getGammaCorrection() to isGammaCorrection() * Use LWJGL3 artifacts from maven * Minor compatibility changes for LWJGL 3.0.0b * Fixed some minor bugs in LwjglWindowexperimental
parent
6cb691592d
commit
2ca55c8b3a
Binary file not shown.
Binary file not shown.
@ -0,0 +1,171 @@ |
|||||||
|
/* |
||||||
|
* Copyright (c) 2009-2015 jMonkeyEngine |
||||||
|
* All rights reserved. |
||||||
|
* |
||||||
|
* Redistribution and use in source and binary forms, with or without |
||||||
|
* modification, are permitted provided that the following conditions are |
||||||
|
* met: |
||||||
|
* |
||||||
|
* * Redistributions of source code must retain the above copyright |
||||||
|
* notice, this list of conditions and the following disclaimer. |
||||||
|
* |
||||||
|
* * Redistributions in binary form must reproduce the above copyright |
||||||
|
* notice, this list of conditions and the following disclaimer in the |
||||||
|
* documentation and/or other materials provided with the distribution. |
||||||
|
* |
||||||
|
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors |
||||||
|
* may be used to endorse or promote products derived from this software |
||||||
|
* without specific prior written permission. |
||||||
|
* |
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||||
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
||||||
|
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
||||||
|
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR |
||||||
|
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
||||||
|
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
||||||
|
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
||||||
|
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
||||||
|
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
||||||
|
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
||||||
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||||
|
*/ |
||||||
|
package com.jme3.input.lwjgl; |
||||||
|
|
||||||
|
import static org.lwjgl.glfw.GLFW.*; |
||||||
|
import static com.jme3.input.KeyInput.*; |
||||||
|
|
||||||
|
public class GlfwKeyMap { |
||||||
|
|
||||||
|
private static final int[] glfwToJmeKeyMap = new int[GLFW_KEY_LAST + 1]; |
||||||
|
|
||||||
|
private static void reg(int jmeKey, int glfwKey) { |
||||||
|
glfwToJmeKeyMap[glfwKey] = jmeKey; |
||||||
|
} |
||||||
|
|
||||||
|
static { |
||||||
|
reg(KEY_ESCAPE, GLFW_KEY_ESCAPE); |
||||||
|
reg(KEY_1, GLFW_KEY_1); |
||||||
|
reg(KEY_2, GLFW_KEY_2); |
||||||
|
reg(KEY_3, GLFW_KEY_3); |
||||||
|
reg(KEY_4, GLFW_KEY_4); |
||||||
|
reg(KEY_5, GLFW_KEY_5); |
||||||
|
reg(KEY_6, GLFW_KEY_6); |
||||||
|
reg(KEY_7, GLFW_KEY_7); |
||||||
|
reg(KEY_8, GLFW_KEY_8); |
||||||
|
reg(KEY_9, GLFW_KEY_9); |
||||||
|
reg(KEY_0, GLFW_KEY_0); |
||||||
|
reg(KEY_MINUS, GLFW_KEY_MINUS); |
||||||
|
reg(KEY_EQUALS, GLFW_KEY_EQUAL); |
||||||
|
reg(KEY_BACK, GLFW_KEY_BACKSPACE); |
||||||
|
reg(KEY_TAB, GLFW_KEY_TAB); |
||||||
|
reg(KEY_Q, GLFW_KEY_Q); |
||||||
|
reg(KEY_W, GLFW_KEY_W); |
||||||
|
reg(KEY_E, GLFW_KEY_E); |
||||||
|
reg(KEY_R, GLFW_KEY_R); |
||||||
|
reg(KEY_T, GLFW_KEY_T); |
||||||
|
reg(KEY_Y, GLFW_KEY_Y); |
||||||
|
reg(KEY_U, GLFW_KEY_U); |
||||||
|
reg(KEY_I, GLFW_KEY_I); |
||||||
|
reg(KEY_O, GLFW_KEY_O); |
||||||
|
reg(KEY_P, GLFW_KEY_P); |
||||||
|
reg(KEY_LBRACKET, GLFW_KEY_LEFT_BRACKET); |
||||||
|
reg(KEY_RBRACKET, GLFW_KEY_RIGHT_BRACKET); |
||||||
|
reg(KEY_RETURN, GLFW_KEY_ENTER); |
||||||
|
reg(KEY_LCONTROL, GLFW_KEY_LEFT_CONTROL); |
||||||
|
reg(KEY_A, GLFW_KEY_A); |
||||||
|
reg(KEY_S, GLFW_KEY_S); |
||||||
|
reg(KEY_D, GLFW_KEY_D); |
||||||
|
reg(KEY_F, GLFW_KEY_F); |
||||||
|
reg(KEY_G, GLFW_KEY_G); |
||||||
|
reg(KEY_H, GLFW_KEY_H); |
||||||
|
reg(KEY_J, GLFW_KEY_J); |
||||||
|
reg(KEY_K, GLFW_KEY_K); |
||||||
|
reg(KEY_L, GLFW_KEY_L); |
||||||
|
reg(KEY_SEMICOLON, GLFW_KEY_SEMICOLON); |
||||||
|
reg(KEY_APOSTROPHE, GLFW_KEY_APOSTROPHE); |
||||||
|
reg(KEY_GRAVE, GLFW_KEY_GRAVE_ACCENT); |
||||||
|
reg(KEY_LSHIFT, GLFW_KEY_LEFT_SHIFT); |
||||||
|
reg(KEY_BACKSLASH, GLFW_KEY_BACKSLASH); |
||||||
|
reg(KEY_Z, GLFW_KEY_Z); |
||||||
|
reg(KEY_X, GLFW_KEY_X); |
||||||
|
reg(KEY_C, GLFW_KEY_C); |
||||||
|
reg(KEY_V, GLFW_KEY_V); |
||||||
|
reg(KEY_B, GLFW_KEY_B); |
||||||
|
reg(KEY_N, GLFW_KEY_N); |
||||||
|
reg(KEY_M, GLFW_KEY_M); |
||||||
|
reg(KEY_COMMA, GLFW_KEY_COMMA); |
||||||
|
reg(KEY_PERIOD, GLFW_KEY_PERIOD); |
||||||
|
reg(KEY_SLASH, GLFW_KEY_SLASH); |
||||||
|
reg(KEY_RSHIFT, GLFW_KEY_RIGHT_SHIFT); |
||||||
|
reg(KEY_MULTIPLY, GLFW_KEY_KP_MULTIPLY); |
||||||
|
reg(KEY_LMENU, GLFW_KEY_LEFT_ALT); |
||||||
|
reg(KEY_SPACE, GLFW_KEY_SPACE); |
||||||
|
reg(KEY_CAPITAL, GLFW_KEY_CAPS_LOCK); |
||||||
|
reg(KEY_F1, GLFW_KEY_F1); |
||||||
|
reg(KEY_F2, GLFW_KEY_F2); |
||||||
|
reg(KEY_F3, GLFW_KEY_F3); |
||||||
|
reg(KEY_F4, GLFW_KEY_F4); |
||||||
|
reg(KEY_F5, GLFW_KEY_F5); |
||||||
|
reg(KEY_F6, GLFW_KEY_F6); |
||||||
|
reg(KEY_F7, GLFW_KEY_F7); |
||||||
|
reg(KEY_F8, GLFW_KEY_F8); |
||||||
|
reg(KEY_F9, GLFW_KEY_F9); |
||||||
|
reg(KEY_F10, GLFW_KEY_F10); |
||||||
|
reg(KEY_NUMLOCK, GLFW_KEY_NUM_LOCK); |
||||||
|
reg(KEY_SCROLL, GLFW_KEY_SCROLL_LOCK); |
||||||
|
reg(KEY_NUMPAD7, GLFW_KEY_KP_7); |
||||||
|
reg(KEY_NUMPAD8, GLFW_KEY_KP_8); |
||||||
|
reg(KEY_NUMPAD9, GLFW_KEY_KP_9); |
||||||
|
reg(KEY_SUBTRACT, GLFW_KEY_KP_SUBTRACT); |
||||||
|
reg(KEY_NUMPAD4, GLFW_KEY_KP_4); |
||||||
|
reg(KEY_NUMPAD5, GLFW_KEY_KP_5); |
||||||
|
reg(KEY_NUMPAD6, GLFW_KEY_KP_6); |
||||||
|
reg(KEY_ADD, GLFW_KEY_KP_ADD); |
||||||
|
reg(KEY_NUMPAD1, GLFW_KEY_KP_1); |
||||||
|
reg(KEY_NUMPAD2, GLFW_KEY_KP_2); |
||||||
|
reg(KEY_NUMPAD3, GLFW_KEY_KP_3); |
||||||
|
reg(KEY_NUMPAD0, GLFW_KEY_KP_0); |
||||||
|
reg(KEY_DECIMAL, GLFW_KEY_KP_DECIMAL); |
||||||
|
reg(KEY_F11, GLFW_KEY_F11); |
||||||
|
reg(KEY_F12, GLFW_KEY_F12); |
||||||
|
reg(KEY_F13, GLFW_KEY_F13); |
||||||
|
reg(KEY_F14, GLFW_KEY_F14); |
||||||
|
reg(KEY_F15, GLFW_KEY_F15); |
||||||
|
//reg(KEY_KANA, GLFW_KEY_);
|
||||||
|
//reg(KEY_CONVERT, GLFW_KEY_);
|
||||||
|
//reg(KEY_NOCONVERT, GLFW_KEY_);
|
||||||
|
//reg(KEY_YEN, GLFW_KEY_);
|
||||||
|
//reg(KEY_NUMPADEQUALS, GLFW_KEY_);
|
||||||
|
//reg(KEY_CIRCUMFLEX, GLFW_KEY_);
|
||||||
|
//reg(KEY_AT, GLFW_KEY_);
|
||||||
|
//reg(KEY_COLON, GLFW_KEY_);
|
||||||
|
//reg(KEY_UNDERLINE, GLFW_KEY_);
|
||||||
|
//reg(KEY_KANJI, GLFW_KEY_);
|
||||||
|
//reg(KEY_STOP, GLFW_KEY_);
|
||||||
|
//reg(KEY_AX, GLFW_KEY_);
|
||||||
|
//reg(KEY_UNLABELED, GLFW_KEY_);
|
||||||
|
reg(KEY_NUMPADENTER, GLFW_KEY_KP_ENTER); |
||||||
|
reg(KEY_RCONTROL, GLFW_KEY_RIGHT_CONTROL); |
||||||
|
//reg(KEY_NUMPADCOMMA, GLFW_KEY_);
|
||||||
|
reg(KEY_DIVIDE, GLFW_KEY_KP_DIVIDE); |
||||||
|
reg(KEY_SYSRQ, GLFW_KEY_PRINT_SCREEN); |
||||||
|
reg(KEY_RMENU, GLFW_KEY_RIGHT_ALT); |
||||||
|
reg(KEY_PAUSE, GLFW_KEY_PAUSE); |
||||||
|
reg(KEY_HOME, GLFW_KEY_HOME); |
||||||
|
reg(KEY_UP, GLFW_KEY_UP); |
||||||
|
reg(KEY_PRIOR, GLFW_KEY_PAGE_UP); |
||||||
|
reg(KEY_LEFT, GLFW_KEY_LEFT); |
||||||
|
reg(KEY_RIGHT, GLFW_KEY_RIGHT); |
||||||
|
reg(KEY_END, GLFW_KEY_END); |
||||||
|
reg(KEY_DOWN, GLFW_KEY_DOWN); |
||||||
|
reg(KEY_NEXT, GLFW_KEY_PAGE_DOWN); |
||||||
|
reg(KEY_INSERT, GLFW_KEY_INSERT); |
||||||
|
reg(KEY_DELETE, GLFW_KEY_DELETE); |
||||||
|
reg(KEY_LMETA, GLFW_KEY_LEFT_SUPER); |
||||||
|
reg(KEY_RMETA, GLFW_KEY_RIGHT_SUPER); |
||||||
|
} |
||||||
|
|
||||||
|
public static int toJmeKeyCode(int glfwKey) { |
||||||
|
return glfwToJmeKeyMap[glfwKey]; |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue