Skip to content

Update glfw3inputbackend.cpp #77

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: glfw3
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
138 changes: 138 additions & 0 deletions src/ui/glfw3inputbackend.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,149 @@ namespace fea
GLFW3InputBackend::GLFW3InputBackend():
mKeyRepeat(true)
{

}

std::queue<Event> GLFW3InputBackend::fetchEvents()
{
std::queue<Event> result;

glfwSetKeyCallback(window, KeyCallback);

void KeyCallback(GLFWwindow* window, int key, int scancode, int action, int mods)
{
switch(action)
{
case GLFW_PRESS:
switch(key)
{
case GLFW_KEY_A:
case GLFW_KEY_S:
case GLFW_KEY_D:
case GLFW_KEY_F:
case GLFW_KEY_G:
case GLFW_KEY_H:
case GLFW_KEY_J:
case GLFW_KEY_K:
case GLFW_KEY_L:
case GLFW_KEY_Z:
case GLFW_KEY_X:
case GLFW_KEY_C:
case GLFW_KEY_V:
case GLFW_KEY_B:
case GLFW_KEY_N:
case GLFW_KEY_M:
case GLFW_KEY_Q:
case GLFW_KEY_W:
case GLFW_KEY_E:
case GLFW_KEY_R:
case GLFW_KEY_T:
case GLFW_KEY_Y:
case GLFW_KEY_U:
case GLFW_KEY_I:
case GLFW_KEY_O:
case GLFW_KEY_P:
case GLFW_KEY_1:
case GLFW_KEY_2:
case GLFW_KEY_3:
case GLFW_KEY_4:
case GLFW_KEY_5:
case GLFW_KEY_6:
case GLFW_KEY_7:
case GLFW_KEY_8:
case GLFW_KEY_9:
case GLFW_KEY_0:


}

case GLFW_RELEASE:
switch(key)
{
case GLFW_KEY_A:
case GLFW_KEY_S:
case GLFW_KEY_D:
case GLFW_KEY_F:
case GLFW_KEY_G:
case GLFW_KEY_H:
case GLFW_KEY_J:
case GLFW_KEY_K:
case GLFW_KEY_L:
case GLFW_KEY_Z:
case GLFW_KEY_X:
case GLFW_KEY_C:
case GLFW_KEY_V:
case GLFW_KEY_B:
case GLFW_KEY_N:
case GLFW_KEY_M:
case GLFW_KEY_Q:
case GLFW_KEY_W:
case GLFW_KEY_E:
case GLFW_KEY_R:
case GLFW_KEY_T:
case GLFW_KEY_Y:
case GLFW_KEY_U:
case GLFW_KEY_I:
case GLFW_KEY_O:
case GLFW_KEY_P:
case GLFW_KEY_1:
case GLFW_KEY_2:
case GLFW_KEY_3:
case GLFW_KEY_4:
case GLFW_KEY_5:
case GLFW_KEY_6:
case GLFW_KEY_7:
case GLFW_KEY_8:
case GLFW_KEY_9:
case GLFW_KEY_0:

}

case GLFW_REPEAT:
switch(key)
{
case GLFW_KEY_A:
case GLFW_KEY_S:
case GLFW_KEY_D:
case GLFW_KEY_F:
case GLFW_KEY_G:
case GLFW_KEY_H:
case GLFW_KEY_J:
case GLFW_KEY_K:
case GLFW_KEY_L:
case GLFW_KEY_Z:
case GLFW_KEY_X:
case GLFW_KEY_C:
case GLFW_KEY_V:
case GLFW_KEY_B:
case GLFW_KEY_N:
case GLFW_KEY_M:
case GLFW_KEY_Q:
case GLFW_KEY_W:
case GLFW_KEY_E:
case GLFW_KEY_R:
case GLFW_KEY_T:
case GLFW_KEY_Y:
case GLFW_KEY_U:
case GLFW_KEY_I:
case GLFW_KEY_O:
case GLFW_KEY_P:
case GLFW_KEY_1:
case GLFW_KEY_2:
case GLFW_KEY_3:
case GLFW_KEY_4:
case GLFW_KEY_5:
case GLFW_KEY_6:
case GLFW_KEY_7:
case GLFW_KEY_8:
case GLFW_KEY_9:
case GLFW_KEY_0:

}

}

}
return result;
}

Expand Down