Fixes #3276
Merge pull request #3277 from bakercp/bugfix-preprocessordefine

Fixes #3276
Explain cryptic ofKeyEventArgs struct members

Nobody knows what any of these things mean without docs. So here's some docs.
Key event struct field docs fix/clarify

Per request changed /*! .. */ to ///. 

Also expanded meaning of `keycode`
Merge pull request #3284 from damiannz/patch-1

Explain cryptic ofKeyEventArgs struct members