Provided by: allegro4-doc_4.4.2-10_all bug

NAME

       keyboard_ucallback - User specified unicode keyboard callback handler. Allegro game programming library.

SYNOPSIS

       #include <allegro.h>

       extern int (*keyboard_ucallback)(int key, int *scancode);

DESCRIPTION

       Unicode-aware  version of keyboard_callback(). If set, this function is called by the keyboard handler in
       response to every keypress. It is passed the character value and scancode that are about to be added into
       the  input buffer, can modify the scancode value, and returns a new or modified key code. If it both sets
       the scancode to zero and returns zero, the  keypress  will  be  ignored.  This  routine  executes  in  an
       interrupt context, so it must be in locked memory. Example:

          int silence_g_key(int key, int *scancode)
          {
             if (key == 'g') {
                *scancode = 0;
                return 0;
             }
             return key;
          } END_OF_FUNCTION(silence_g_key)

          ...

             install_timer();
             LOCK_FUNCTION(silence_g_key);
             install_keyboard();
             keyboard_ucallback = silence_g_key;

       Note  that  this  keyboard callback has priority over the non unicode callback. If you set both, only the
       unicode one will work.

SEE ALSO

       install_keyboard(3alleg4),     readkey(3alleg4),      ureadkey(3alleg4),      keyboard_callback(3alleg4),
       keyboard_lowlevel_callback(3alleg4)