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

FreeBSD Manual Pages

  
 
  

home | help
AG_KEYSYM(3)		 BSD Library Functions Manual		  AG_KEYSYM(3)

NAME
     AG_KeySym -- agar key description

SYNOPSIS
     #include <agar/core.h>
     #include <agar/gui.h>

DESCRIPTION
     The AG_KeySym type	describes virtual keyboard keys, covering the ASCII
     range in addition to some common function keys.  Physical keyboard	scan-
     codes are mapped to AG_KeySym values in a platform-dependent way by the
     underlying	Agar driver (which may or may not generate a Unicode character
     as	well).	In general, Agar developers should reference things such as
     user-configurable function	keys and keyboard shortcuts using AG_KeySym
     values as well as Unicode character values.

     The functions AG_LookupKeyName(3) and AG_LookupKeySym(3) may be used to
     convert between numerical and string representation.

     typedef enum ag_key_sym {
	     AG_KEY_NONE	     = 0x0000,	     /*	Start of ASCII range */
	     AG_KEY_ASCII_START	     = 0x0000,
     /*	     AG_KEY_ASCII_SOH	     = 0x0001, */
     /*	     AG_KEY_ASCII_STX	     = 0x0002, */
     /*	     AG_KEY_ASCII_ETX	     = 0x0003, */
     /*	     AG_KEY_ASCII_EOT	     = 0x0004, */
     /*	     AG_KEY_ASCII_ENQ	     = 0x0005, */
     /*	     AG_KEY_ASCII_ACK	     = 0x0006, */
     /*	     AG_KEY_ASCII_BEL	     = 0x0007, */
	     AG_KEY_BACKSPACE	     = 0x0008,
	     AG_KEY_TAB		     = 0x0009,
     /*	     AG_KEY_ASCII_NEWLINE    = 0x000a, */
     /*	     AG_KEY_ASCII_VT	     = 0x000b, */
	     AG_KEY_CLEAR	     = 0x000c,
	     AG_KEY_RETURN	     = 0x000d,
     /*	     AG_KEY_ASCII_SO	     = 0x000e, */
     /*	     AG_KEY_ASCII_SI	     = 0x000f, */
     /*	     AG_KEY_ASCII_DLE	     = 0x0010, */
     /*	     AG_KEY_ASCII_DC1	     = 0x0011, */
     /*	     AG_KEY_ASCII_DC2	     = 0x0012, */
	     AG_KEY_PAUSE	     = 0x0013,
     /*	     AG_KEY_ASCII_DC4	     = 0x0014, */
     /*	     AG_KEY_ASCII_NAK	     = 0x0015, */
     /*	     AG_KEY_ASCII_SYN	     = 0x0016, */
     /*	     AG_KEY_ASCII_ETB	     = 0x0017, */
     /*	     AG_KEY_ASCII_CAN	     = 0x0018, */
     /*	     AG_KEY_ASCII_EM	     = 0x0019, */
     /*	     AG_KEY_ASCII_SUB	     = 0x001a, */
	     AG_KEY_ESCAPE	     = 0x001b,
     /*	     AG_KEY_ASCII_FS	     = 0x001c, */
     /*	     AG_KEY_ASCII_GS	     = 0x001d, */
     /*	     AG_KEY_ASCII_RS	     = 0x001e, */
     /*	     AG_KEY_ASCII_US	     = 0x001f, */
	     AG_KEY_SPACE	     = 0x0020,
	     AG_KEY_EXCLAIM	     = 0x0021,	     /*	! */
	     AG_KEY_QUOTEDBL	     = 0x0022,	     /*	" */
	     AG_KEY_HASH	     = 0x0023,	     /*	# */
	     AG_KEY_DOLLAR	     = 0x0024,	     /*	$ */
	     AG_KEY_PERCENT	     = 0x0025,	     /*	% */
	     AG_KEY_AMPERSAND	     = 0x0026,	     /*	& */
	     AG_KEY_QUOTE	     = 0x0027,	     /*	' */
	     AG_KEY_LEFTPAREN	     = 0x0028,	     /*	( */
	     AG_KEY_RIGHTPAREN	     = 0x0029,	     /*	) */
	     AG_KEY_ASTERISK	     = 0x002a,	     /*	* */
	     AG_KEY_PLUS	     = 0x002b,	     /*	+ */
	     AG_KEY_COMMA	     = 0x002c,	     /*	, */
	     AG_KEY_MINUS	     = 0x002d,	     /*	- */
	     AG_KEY_PERIOD	     = 0x002e,	     /*	. */
	     AG_KEY_SLASH	     = 0x002f,	     /*	/ */
	     AG_KEY_0		     = 0x0030,	     /*	0 */
	     AG_KEY_1		     = 0x0031,	     /*	1 */
	     AG_KEY_2		     = 0x0032,	     /*	2 */
	     AG_KEY_3		     = 0x0033,	     /*	3 */
	     AG_KEY_4		     = 0x0034,	     /*	4 */
	     AG_KEY_5		     = 0x0035,	     /*	5 */
	     AG_KEY_6		     = 0x0036,	     /*	6 */
	     AG_KEY_7		     = 0x0037,	     /*	7 */
	     AG_KEY_8		     = 0x0038,	     /*	8 */
	     AG_KEY_9		     = 0x0039,	     /*	9 */
	     AG_KEY_COLON	     = 0x003a,	     /*	: */
	     AG_KEY_SEMICOLON	     = 0x003b,	     /*	; */
	     AG_KEY_LESS	     = 0x003c,	     /*	< */
	     AG_KEY_EQUALS	     = 0x003d,	     /*	= */
	     AG_KEY_GREATER	     = 0x003e,	     /*	> */
	     AG_KEY_QUESTION	     = 0x003f,	     /*	? */
	     AG_KEY_AT		     = 0x0040,	     /*	@ */
     #if 0
	     AG_KEY_UPPER_A	     = 0x0041,	     /*	A */
	     AG_KEY_UPPER_B	     = 0x0042,	     /*	B */
	     AG_KEY_UPPER_C	     = 0x0043,	     /*	C */
	     AG_KEY_UPPER_D	     = 0x0044,	     /*	D */
	     AG_KEY_UPPER_E	     = 0x0045,	     /*	E */
	     AG_KEY_UPPER_F	     = 0x0046,	     /*	F */
	     AG_KEY_UPPER_G	     = 0x0047,	     /*	G */
	     AG_KEY_UPPER_H	     = 0x0048,	     /*	H */
	     AG_KEY_UPPER_I	     = 0x0049,	     /*	I */
	     AG_KEY_UPPER_J	     = 0x004a,	     /*	J */
	     AG_KEY_UPPER_K	     = 0x004b,	     /*	K */
	     AG_KEY_UPPER_L	     = 0x004c,	     /*	L */
	     AG_KEY_UPPER_M	     = 0x004d,	     /*	M */
	     AG_KEY_UPPER_N	     = 0x004e,	     /*	N */
	     AG_KEY_UPPER_O	     = 0x004f,	     /*	O */
	     AG_KEY_UPPER_P	     = 0x0050,	     /*	P */
	     AG_KEY_UPPER_Q	     = 0x0051,	     /*	Q */
	     AG_KEY_UPPER_R	     = 0x0052,	     /*	R */
	     AG_KEY_UPPER_S	     = 0x0053,	     /*	S */
	     AG_KEY_UPPER_T	     = 0x0054,	     /*	T */
	     AG_KEY_UPPER_U	     = 0x0055,	     /*	U */
	     AG_KEY_UPPER_V	     = 0x0056,	     /*	V */
	     AG_KEY_UPPER_W	     = 0x0057,	     /*	W */
	     AG_KEY_UPPER_X	     = 0x0058,	     /*	X */
	     AG_KEY_UPPER_Y	     = 0x0059,	     /*	Y */
	     AG_KEY_UPPER_Z	     = 0x005a,	     /*	Z */
     #endif
	     AG_KEY_LEFTBRACKET	     = 0x005b,	     /*	[ */
	     AG_KEY_BACKSLASH	     = 0x005c,	     /*	 */
	     AG_KEY_RIGHTBRACKET     = 0x005d,	     /*	] */
	     AG_KEY_CARET	     = 0x005e,	     /*	^ */
	     AG_KEY_UNDERSCORE	     = 0x005f,	     /*	_ */
	     AG_KEY_BACKQUOTE	     = 0x0060,	     /*	` */
	     AG_KEY_A		     = 0x0061,	     /*	a */
	     AG_KEY_B		     = 0x0062,	     /*	b */
	     AG_KEY_C		     = 0x0063,	     /*	c */
	     AG_KEY_D		     = 0x0064,	     /*	d */
	     AG_KEY_E		     = 0x0065,	     /*	e */
	     AG_KEY_F		     = 0x0066,	     /*	f */
	     AG_KEY_G		     = 0x0067,	     /*	g */
	     AG_KEY_H		     = 0x0068,	     /*	h */
	     AG_KEY_I		     = 0x0069,	     /*	i */
	     AG_KEY_J		     = 0x006a,	     /*	j */
	     AG_KEY_K		     = 0x006b,	     /*	k */
	     AG_KEY_L		     = 0x006c,	     /*	l */
	     AG_KEY_M		     = 0x006d,	     /*	m */
	     AG_KEY_N		     = 0x006e,	     /*	n */
	     AG_KEY_O		     = 0x006f,	     /*	o */
	     AG_KEY_P		     = 0x0070,	     /*	p */
	     AG_KEY_Q		     = 0x0071,	     /*	q */
	     AG_KEY_R		     = 0x0072,	     /*	r */
	     AG_KEY_S		     = 0x0073,	     /*	s */
	     AG_KEY_T		     = 0x0074,	     /*	t */
	     AG_KEY_U		     = 0x0075,	     /*	u */
	     AG_KEY_V		     = 0x0076,	     /*	v */
	     AG_KEY_W		     = 0x0077,	     /*	w */
	     AG_KEY_X		     = 0x0078,	     /*	x */
	     AG_KEY_Y		     = 0x0079,	     /*	y */
	     AG_KEY_Z		     = 0x007a,	     /*	z */
	     AG_KEY_DELETE	     = 0x007f,
	     AG_KEY_ASCII_END	     = 0x007f,	     /*	End of ASCII range */
	     AG_KEY_KP0		     = 0x0100,
	     AG_KEY_KP1		     = 0x0101,
	     AG_KEY_KP2		     = 0x0102,
	     AG_KEY_KP3		     = 0x0103,
	     AG_KEY_KP4		     = 0x0104,
	     AG_KEY_KP5		     = 0x0105,
	     AG_KEY_KP6		     = 0x0106,
	     AG_KEY_KP7		     = 0x0107,
	     AG_KEY_KP8		     = 0x0108,
	     AG_KEY_KP9		     = 0x0109,
	     AG_KEY_KP_PERIOD	     = 0x010a,
	     AG_KEY_KP_DIVIDE	     = 0x010b,
	     AG_KEY_KP_MULTIPLY	     = 0x010c,
	     AG_KEY_KP_MINUS	     = 0x010d,
	     AG_KEY_KP_PLUS	     = 0x010e,
	     AG_KEY_KP_ENTER	     = 0x010f,
	     AG_KEY_KP_EQUALS	     = 0x0110,
	     AG_KEY_UP		     = 0x0111,
	     AG_KEY_DOWN	     = 0x0112,
	     AG_KEY_RIGHT	     = 0x0113,
	     AG_KEY_LEFT	     = 0x0114,
	     AG_KEY_INSERT	     = 0x0115,
	     AG_KEY_HOME	     = 0x0116,
	     AG_KEY_END		     = 0x0117,
	     AG_KEY_PAGEUP	     = 0x0118,
	     AG_KEY_PAGEDOWN	     = 0x0119,
	     AG_KEY_F1		     = 0x011a,
	     AG_KEY_F2		     = 0x011b,
	     AG_KEY_F3		     = 0x011c,
	     AG_KEY_F4		     = 0x011d,
	     AG_KEY_F5		     = 0x011e,
	     AG_KEY_F6		     = 0x011f,
	     AG_KEY_F7		     = 0x0120,
	     AG_KEY_F8		     = 0x0121,
	     AG_KEY_F9		     = 0x0122,
	     AG_KEY_F10		     = 0x0123,
	     AG_KEY_F11		     = 0x0124,
	     AG_KEY_F12		     = 0x0125,
	     AG_KEY_F13		     = 0x0126,
	     AG_KEY_F14		     = 0x0127,
	     AG_KEY_F15		     = 0x0128,
	     AG_KEY_NUMLOCK	     = 0x012c,
	     AG_KEY_CAPSLOCK	     = 0x012d,
	     AG_KEY_SCROLLOCK	     = 0x012e,
	     AG_KEY_RSHIFT	     = 0x012f,
	     AG_KEY_LSHIFT	     = 0x0130,
	     AG_KEY_RCTRL	     = 0x0131,
	     AG_KEY_LCTRL	     = 0x0132,
	     AG_KEY_RALT	     = 0x0133,
	     AG_KEY_LALT	     = 0x0134,
	     AG_KEY_RMETA	     = 0x0135,
	     AG_KEY_LMETA	     = 0x0136,
	     AG_KEY_LSUPER	     = 0x0137,
	     AG_KEY_RSUPER	     = 0x0138,
	     AG_KEY_MODE	     = 0x0139,
	     AG_KEY_COMPOSE	     = 0x013a,
	     AG_KEY_HELP	     = 0x013b,
	     AG_KEY_PRINT	     = 0x013c,
	     AG_KEY_SYSREQ	     = 0x013d,
	     AG_KEY_BREAK	     = 0x013e,
	     AG_KEY_MENU	     = 0x013f,
	     AG_KEY_POWER	     = 0x0140,
	     AG_KEY_EURO	     = 0x0141,
	     AG_KEY_UNDO	     = 0x0142,
	     AG_KEY_GRAVE	     = 0x0143,
	     AG_KEY_KP_CLEAR	     = 0x0144,
	     AG_KEY_COMMAND	     = 0x0145,
	     AG_KEY_FUNCTION	     = 0x0146,
	     AG_KEY_VOLUME_UP	     = 0x0147,
	     AG_KEY_VOLUME_DOWN	     = 0x0148,
	     AG_KEY_VOLUME_MUTE	     = 0x0149,
	     AG_KEY_F16		     = 0x014a,
	     AG_KEY_F17		     = 0x014b,
	     AG_KEY_F18		     = 0x014c,
	     AG_KEY_F19		     = 0x014d,
	     AG_KEY_F20		     = 0x014e,
	     AG_KEY_F21		     = 0x014f,
	     AG_KEY_F22		     = 0x0150,
	     AG_KEY_F23		     = 0x0151,
	     AG_KEY_F24		     = 0x0152,
	     AG_KEY_F25		     = 0x0153,
	     AG_KEY_F26		     = 0x0154,
	     AG_KEY_F27		     = 0x0155,
	     AG_KEY_F28		     = 0x0156,
	     AG_KEY_F29		     = 0x0157,
	     AG_KEY_F30		     = 0x0158,
	     AG_KEY_F31		     = 0x0159,
	     AG_KEY_F32		     = 0x015a,
	     AG_KEY_F33		     = 0x015b,
	     AG_KEY_F34		     = 0x015c,
	     AG_KEY_F35		     = 0x015d,
	     AG_KEY_BEGIN	     = 0x015e,
	     AG_KEY_RESET	     = 0x015f,
	     AG_KEY_STOP	     = 0x0160,
	     AG_KEY_USER	     = 0x0161,
	     AG_KEY_SYSTEM	     = 0x0162,
	     AG_KEY_PRINT_SCREEN     = 0x0163,
	     AG_KEY_CLEAR_LINE	     = 0x0164,
	     AG_KEY_CLEAR_DISPLAY    = 0x0165,
	     AG_KEY_INSERT_LINE	     = 0x0166,
	     AG_KEY_DELETE_LINE	     = 0x0167,
	     AG_KEY_INSERT_CHAR	     = 0x0168,
	     AG_KEY_DELETE_CHAR	     = 0x0169,
	     AG_KEY_PREV	     = 0x016a,
	     AG_KEY_NEXT	     = 0x016b,
	     AG_KEY_SELECT	     = 0x016c,
	     AG_KEY_EXECUTE	     = 0x016d,
	     AG_KEY_REDO	     = 0x016e,
	     AG_KEY_FIND	     = 0x016f,
	     AG_KEY_MODE_SWITCH	     = 0x0170,
	     AG_KEY_LAST	     = 0x0171,
	     AG_KEY_ANY		     = 0xffff	     /*	For matching */
     } AG_KeySym;

SEE ALSO
     AG_Intro(3), AG_Keyboard(3), AG_KeyMod(3),	AG_Widget(3), AG_Window(3)

HISTORY
     The AG_KeySym type	first appeared in Agar 1.4.  New function keys are
     added in Agar 1.5.0.

BSD				October	2, 2009				   BSD

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | HISTORY

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

home | help