comparison Platforms/Wasm/Defaults.cpp @ 327:8716176ff7f0 am-2

added support for arrow keys
author am@osimis.io
date Tue, 16 Oct 2018 15:25:21 +0200
parents 14ef1227120f
children 6cc3ce74dc05
comparison
equal deleted inserted replaced
326:612238b3f3e8 327:8716176ff7f0
217 { 217 {
218 viewport->MouseMove(x, y); 218 viewport->MouseMove(x, y);
219 } 219 }
220 220
221 void EMSCRIPTEN_KEEPALIVE ViewportKeyPressed(ViewportHandle viewport, 221 void EMSCRIPTEN_KEEPALIVE ViewportKeyPressed(ViewportHandle viewport,
222 const char* key, 222 int key,
223 const char* keyChar,
223 bool isShiftPressed, 224 bool isShiftPressed,
224 bool isControlPressed, 225 bool isControlPressed,
225 bool isAltPressed) 226 bool isAltPressed)
226 227
227 { 228 {
233 modifiers = static_cast<OrthancStone::KeyboardModifiers>(modifiers + OrthancStone::KeyboardModifiers_Control); 234 modifiers = static_cast<OrthancStone::KeyboardModifiers>(modifiers + OrthancStone::KeyboardModifiers_Control);
234 } 235 }
235 if (isAltPressed) { 236 if (isAltPressed) {
236 modifiers = static_cast<OrthancStone::KeyboardModifiers>(modifiers + OrthancStone::KeyboardModifiers_Alt); 237 modifiers = static_cast<OrthancStone::KeyboardModifiers>(modifiers + OrthancStone::KeyboardModifiers_Alt);
237 } 238 }
238 printf("key pressed : %c\n", key[0]); 239
239 viewport->KeyPressed(key[0], modifiers); 240 char c = 0;
241 if (keyChar != NULL && key == OrthancStone::KeyboardKeys_Generic) {
242 c = keyChar[0];
243 }
244 viewport->KeyPressed(static_cast<OrthancStone::KeyboardKeys>(key), c, modifiers);
240 } 245 }
241 246
242 247
243 void EMSCRIPTEN_KEEPALIVE ViewportMouseUp(ViewportHandle viewport) 248 void EMSCRIPTEN_KEEPALIVE ViewportMouseUp(ViewportHandle viewport)
244 { 249 {