summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-03-23 12:07:58 -0400
committerPietro Gagliardi <[email protected]>2014-03-23 12:07:58 -0400
commit963f83e39cbcf6fdb49dee41735dadbab4149c46 (patch)
treef151e91d82cc862facfa722c9f6717e4d9e0e84d
parentbcd4de443c89125a969f319eee8baf02e52905da (diff)
Added loose ends to the Area keyboard planning. Hopefully I'll FINALLY write the code today...
-rw-r--r--areaplan.md7
1 files changed, 7 insertions, 0 deletions
diff --git a/areaplan.md b/areaplan.md
index f0bb502..f4816cc 100644
--- a/areaplan.md
+++ b/areaplan.md
@@ -993,3 +993,10 @@ VK_OEM_CLEAR (0xFE) - Clear key
BONUS OS X NOTE (which means we're right in ignoring numpad differences)
>`NSNumericPadKeyMask`
>Set if any key in the numeric keypad is pressed. The numeric keypad is generally on the right side of the keyboard. This is also set if any of the arrow keys are pressed (NSUpArrowFunctionKey, NSDownArrowFunctionKey, NSLeftArrowFunctionKey, and NSRightArrowFunctionKey).
+
+For the character keys on Windows, I suppose I could get away with checking the nonstandard OEM keys for a WM_CHAR... will need to check, but first, need to find a keyboard layout that has different rules
+
+For the locks: I'll need a way to get their state anyway, so simply checking keypresses isn't really effective
+* **Caps Lock**: simply checking this and simulating Shift isn't good, because Windows and Unix have Caps Lock act like an inverse Shift, while Mac OS X has it act like a permanent Shift. I might have to add "The case of Rune is undefined; it does not necessarily correspond to the state of the Shift key. Correct code will need to check both uppercase and lowercase forms of letters."
+* **Num Lock**: already handled; we're not differentiating between numpad and non-numpad anyway so knowing the Num Lock state is meaningless
+* **Scroll Lock**: ...will need to figure out how to read lock state for this one.