Mercurial > hg > orthanc-stone
diff Platforms/Wasm/wasm-viewport.ts @ 327:8716176ff7f0 am-2
added support for arrow keys
author | am@osimis.io |
---|---|
date | Tue, 16 Oct 2018 15:25:21 +0200 |
parents | 97f16214dc5e |
children | 8bf717c4e497 |
line wrap: on
line diff
--- a/Platforms/Wasm/wasm-viewport.ts Tue Oct 16 12:57:38 2018 +0200 +++ b/Platforms/Wasm/wasm-viewport.ts Tue Oct 16 15:25:21 2018 +0200 @@ -80,7 +80,7 @@ this.ViewportMouseEnter = this.module_.cwrap('ViewportMouseEnter', null, [ 'number' ]); this.ViewportMouseLeave = this.module_.cwrap('ViewportMouseLeave', null, [ 'number' ]); this.ViewportMouseWheel = this.module_.cwrap('ViewportMouseWheel', null, [ 'number', 'number', 'number', 'number', 'number' ]); - this.ViewportKeyPressed = this.module_.cwrap('ViewportKeyPressed', null, [ 'number', 'string', 'number', 'number' ]); + this.ViewportKeyPressed = this.module_.cwrap('ViewportKeyPressed', null, [ 'number', 'number', 'string', 'number', 'number' ]); } public GetCppViewport() : number { @@ -204,7 +204,15 @@ }); window.addEventListener('keydown', function(event) { - that.ViewportKeyPressed(that.pimpl_, event.key, event.shiftKey, event.ctrlKey, event.altKey); + var keyChar = event.key; + var keyCode = event.keyCode + if (keyChar.length == 1) { + keyCode = 0; // maps to OrthancStone::KeyboardKeys_Generic + } else { + keyChar = null; + } +// console.log("key: ", keyCode, keyChar); + that.ViewportKeyPressed(that.pimpl_, keyCode, keyChar, event.shiftKey, event.ctrlKey, event.altKey); }); this.htmlCanvas_.addEventListener('wheel', function(event) {