Monday, June 27, 2011

The Dynamic Duo

This past week has been incredibly eye-opening. From fighting with signal passing one day to analyzing implementation the next, I've been plenty busy. At the beginning of the week Dan asked me to create a full-scale keyboard for people who want more options, but are limited to the virtual keyboard. I have added the Esc, Tab, and F1-12 buttons. In addition to that I implemented the all-too-tricky Ctrl/Alt keys.
The difference with these keys was that when the user presses the Ctrl key there is no immediate effect as in with the other keys. The user has to press a non-modifier (ie. 'a') in order for something to happen (same goes for Alt). So, when the user presses the key a signal is sent to the keyboard telling it that a modifier has been pressed and then putting it in the queue.

Here is the Ctrl key in action (as well as a preview to the full-scale layout).

I still need to do some more work figuring out the right spacing for this layout. As you can see some rows have many more keys than others making awkward gaps.
What I really want to start working on is the positioning code for the keyboard. This code will place the onscreen keyboard underneath any location where there is an input device, and will show the keyboard *only* when the user needs to type something, which will surely make for happy web surfing.

Until later,

1 comment:

  1. Looks really well. The only problem I see with it is that there is too much empty space on it. You should make some of the buttons a little bigger and a little more orangized.