Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
keyboard_ucallback(3)		Allegro	manual		 keyboard_ucallback(3)

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	inter-
       rupt 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(3),   readkey(3),  ureadkey(3),	 keyboard_callback(3),
       keyboard_lowlevel_callback(3)

Allegro				 version 4.4.2		 keyboard_ucallback(3)

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=keyboard_ucallback&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help