WIP key&mouse support.

This commit is contained in:
bkaradzic
2013-01-17 23:22:38 -08:00
parent a2057d65aa
commit 91446e05a4
5 changed files with 178 additions and 146 deletions

View File

@@ -77,80 +77,80 @@ namespace entry
, m_exit(false)
{
memset(s_translateKey, 0, sizeof(s_translateKey) );
s_translateKey[VK_ESCAPE] = Key::Esc;
s_translateKey[VK_RETURN] = Key::Return;
s_translateKey[VK_TAB] = Key::Tab;
s_translateKey[VK_BACK] = Key::Backspace;
s_translateKey[VK_SPACE] = Key::Space;
s_translateKey[VK_UP] = Key::Up;
s_translateKey[VK_DOWN] = Key::Down;
s_translateKey[VK_LEFT] = Key::Left;
s_translateKey[VK_RIGHT] = Key::Right;
s_translateKey[VK_PRIOR] = Key::PageUp;
s_translateKey[VK_NEXT] = Key::PageUp;
s_translateKey[VK_HOME] = Key::Home;
s_translateKey[VK_END] = Key::End;
s_translateKey[VK_SNAPSHOT] = Key::Print;
s_translateKey[VK_OEM_PLUS] = Key::Plus;
s_translateKey[VK_ESCAPE] = Key::Esc;
s_translateKey[VK_RETURN] = Key::Return;
s_translateKey[VK_TAB] = Key::Tab;
s_translateKey[VK_BACK] = Key::Backspace;
s_translateKey[VK_SPACE] = Key::Space;
s_translateKey[VK_UP] = Key::Up;
s_translateKey[VK_DOWN] = Key::Down;
s_translateKey[VK_LEFT] = Key::Left;
s_translateKey[VK_RIGHT] = Key::Right;
s_translateKey[VK_PRIOR] = Key::PageUp;
s_translateKey[VK_NEXT] = Key::PageUp;
s_translateKey[VK_HOME] = Key::Home;
s_translateKey[VK_END] = Key::End;
s_translateKey[VK_SNAPSHOT] = Key::Print;
s_translateKey[VK_OEM_PLUS] = Key::Plus;
s_translateKey[VK_OEM_MINUS] = Key::Minus;
s_translateKey[VK_F1] = Key::F1;
s_translateKey[VK_F2] = Key::F2;
s_translateKey[VK_F3] = Key::F3;
s_translateKey[VK_F4] = Key::F4;
s_translateKey[VK_F5] = Key::F5;
s_translateKey[VK_F6] = Key::F6;
s_translateKey[VK_F7] = Key::F7;
s_translateKey[VK_F8] = Key::F8;
s_translateKey[VK_F9] = Key::F9;
s_translateKey[VK_F10] = Key::F10;
s_translateKey[VK_F11] = Key::F11;
s_translateKey[VK_F12] = Key::F12;
s_translateKey[VK_NUMPAD0] = Key::NumPad0;
s_translateKey[VK_NUMPAD1] = Key::NumPad1;
s_translateKey[VK_NUMPAD2] = Key::NumPad2;
s_translateKey[VK_NUMPAD3] = Key::NumPad3;
s_translateKey[VK_NUMPAD4] = Key::NumPad4;
s_translateKey[VK_NUMPAD5] = Key::NumPad5;
s_translateKey[VK_NUMPAD6] = Key::NumPad6;
s_translateKey[VK_NUMPAD7] = Key::NumPad7;
s_translateKey[VK_NUMPAD8] = Key::NumPad8;
s_translateKey[VK_NUMPAD9] = Key::NumPad9;
s_translateKey['0'] = Key::Key0;
s_translateKey['1'] = Key::Key1;
s_translateKey['2'] = Key::Key2;
s_translateKey['3'] = Key::Key3;
s_translateKey['4'] = Key::Key4;
s_translateKey['5'] = Key::Key5;
s_translateKey['6'] = Key::Key6;
s_translateKey['7'] = Key::Key7;
s_translateKey['8'] = Key::Key8;
s_translateKey['9'] = Key::Key9;
s_translateKey['A'] = Key::KeyA;
s_translateKey['B'] = Key::KeyB;
s_translateKey['C'] = Key::KeyC;
s_translateKey['D'] = Key::KeyD;
s_translateKey['E'] = Key::KeyE;
s_translateKey['F'] = Key::KeyF;
s_translateKey['G'] = Key::KeyG;
s_translateKey['H'] = Key::KeyH;
s_translateKey['I'] = Key::KeyI;
s_translateKey['J'] = Key::KeyJ;
s_translateKey['K'] = Key::KeyK;
s_translateKey['L'] = Key::KeyL;
s_translateKey['M'] = Key::KeyM;
s_translateKey['N'] = Key::KeyN;
s_translateKey['O'] = Key::KeyO;
s_translateKey['P'] = Key::KeyP;
s_translateKey['Q'] = Key::KeyQ;
s_translateKey['R'] = Key::KeyR;
s_translateKey['S'] = Key::KeyS;
s_translateKey['T'] = Key::KeyT;
s_translateKey['U'] = Key::KeyU;
s_translateKey['V'] = Key::KeyV;
s_translateKey['W'] = Key::KeyW;
s_translateKey['X'] = Key::KeyX;
s_translateKey['Y'] = Key::KeyY;
s_translateKey['Z'] = Key::KeyZ;
s_translateKey[VK_F1] = Key::F1;
s_translateKey[VK_F2] = Key::F2;
s_translateKey[VK_F3] = Key::F3;
s_translateKey[VK_F4] = Key::F4;
s_translateKey[VK_F5] = Key::F5;
s_translateKey[VK_F6] = Key::F6;
s_translateKey[VK_F7] = Key::F7;
s_translateKey[VK_F8] = Key::F8;
s_translateKey[VK_F9] = Key::F9;
s_translateKey[VK_F10] = Key::F10;
s_translateKey[VK_F11] = Key::F11;
s_translateKey[VK_F12] = Key::F12;
s_translateKey[VK_NUMPAD0] = Key::NumPad0;
s_translateKey[VK_NUMPAD1] = Key::NumPad1;
s_translateKey[VK_NUMPAD2] = Key::NumPad2;
s_translateKey[VK_NUMPAD3] = Key::NumPad3;
s_translateKey[VK_NUMPAD4] = Key::NumPad4;
s_translateKey[VK_NUMPAD5] = Key::NumPad5;
s_translateKey[VK_NUMPAD6] = Key::NumPad6;
s_translateKey[VK_NUMPAD7] = Key::NumPad7;
s_translateKey[VK_NUMPAD8] = Key::NumPad8;
s_translateKey[VK_NUMPAD9] = Key::NumPad9;
s_translateKey['0'] = Key::Key0;
s_translateKey['1'] = Key::Key1;
s_translateKey['2'] = Key::Key2;
s_translateKey['3'] = Key::Key3;
s_translateKey['4'] = Key::Key4;
s_translateKey['5'] = Key::Key5;
s_translateKey['6'] = Key::Key6;
s_translateKey['7'] = Key::Key7;
s_translateKey['8'] = Key::Key8;
s_translateKey['9'] = Key::Key9;
s_translateKey['A'] = Key::KeyA;
s_translateKey['B'] = Key::KeyB;
s_translateKey['C'] = Key::KeyC;
s_translateKey['D'] = Key::KeyD;
s_translateKey['E'] = Key::KeyE;
s_translateKey['F'] = Key::KeyF;
s_translateKey['G'] = Key::KeyG;
s_translateKey['H'] = Key::KeyH;
s_translateKey['I'] = Key::KeyI;
s_translateKey['J'] = Key::KeyJ;
s_translateKey['K'] = Key::KeyK;
s_translateKey['L'] = Key::KeyL;
s_translateKey['M'] = Key::KeyM;
s_translateKey['N'] = Key::KeyN;
s_translateKey['O'] = Key::KeyO;
s_translateKey['P'] = Key::KeyP;
s_translateKey['Q'] = Key::KeyQ;
s_translateKey['R'] = Key::KeyR;
s_translateKey['S'] = Key::KeyS;
s_translateKey['T'] = Key::KeyT;
s_translateKey['U'] = Key::KeyU;
s_translateKey['V'] = Key::KeyV;
s_translateKey['W'] = Key::KeyW;
s_translateKey['X'] = Key::KeyX;
s_translateKey['Y'] = Key::KeyY;
s_translateKey['Z'] = Key::KeyZ;
}
int32_t main(int _argc, char** _argv)
@@ -344,6 +344,14 @@ namespace entry
}
break;
case WM_MOUSEMOVE:
{
int32_t mx = GET_X_LPARAM(_lparam);
int32_t my = GET_Y_LPARAM(_lparam);
m_eventQueue.postMouseEvent(mx, my);
}
break;
case WM_LBUTTONDOWN:
case WM_LBUTTONUP:
case WM_LBUTTONDBLCLK: