Arguments: window buttons key-code
This generic function is called when the user presses a keyboard key down. An application may add methods to this generic function to respond to keyboard events in its windows.
window is the window that had the keyboard focus when the event occurred. The keyboard focus is usually indicated by some sort of highlighting.
buttons is an integer indicating which mouse buttons and shift keys were down when the event occurred. The value is the result of applying logior to the values of the following bit-flag variables:
Other bits might be turned on as well, so functions such as logtest should be used to determine whether a particular mouse button or shift key was down; for example,
(logtest right-mouse-button buttons)
will return true if and only if the right mouse button was down. For "down" events, the value includes the button or key being pressed now; for "up" events, the value does not include the button or key being released.
key-code is an integer representing the key that
was pressed. If an alphanumeric character appears on the key, then
key-code is the char-int of that character. Otherwise, key-code is the
value of one of the character name constants beginning with "vk-". The
value of the constant key-names is a list of all of the
"vk-" character names.
A note about virtual-key-down and character-message:
While a keypress will always cause virtual-key-down and virtual-key-up to be called, it will cause character-message to be called only under certain conditions. First, the keypress must indicate a graphical character. second, one of the following must be true:
1. The window in which the key was pressed is a dialog-mixin instance or a child or
other descendant of a dialog-mixin instance; or
2. The default virtual-key-down method must run (since this method tells the operating system to generate a character message from the virtual-key-down message).
Therefore, if an application adds a virtual-key-down method for a window that is not on a dialog, and this method does not call (call-next-method) for a particular keypress, then the default virtual-key-down method is not called, and therefore character-message will not be called for that keypress.
See About events in the IDE in cgide.htm.
Common Graphics and IDE documentation is described in About Common Graphics and IDE documentation in cgide.htm.
The documentation is described in introduction.htm and the index is in index.htm.
Copyright (c) 1998-2000, Franz Inc. Berkeley, CA., USA. All rights reserved.
Created 2000.10.5.