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

  
 
  

home | help
XkbGetKeyExplicitComponents(3)	  XKB FUNCTION	  XkbGetKeyExplicitComponents(3)

NAME
     XkbGetKeyExplicitComponents  - Obtain the explicit components (the explicit
     array) for a subset of the keys in a keyboard description

SYNOPSIS
     Status XkbGetKeyExplicitComponents (Display *dpy, unsigned int  first,  un-
	    signed int num, XkbDescPtr xkb);

ARGUMENTS
     dpy    connection to server

     first  keycode of first key to fetch

     num    number of keys for which to get explicit info

     xkb    Xkb description in which to put results

DESCRIPTION
     Whenever a client remaps the keyboard using core protocol requests, Xkb ex-
     amines  the  map to determine likely default values for the components that
     cannot be specified using the core protocol (see Core Keyboard  Mapping  to
     Xkb Keyboard Mapping Transformation for more information on how Xkb chooses
     the default values).

     DO  THE FOUR PAGES OF "CORE KEYBOARD MAPPING TO XKB KEYBOARD MAPPING TRANS-
     FORMATION" NEED TO BE ADDED HERE?

     This automatic remapping might replace definitions explicitly requested  by
     an  application, so the Xkb keyboard description defines an explicit compo-
     nents mask for each key. Any aspects of the automatic remapping  listed  in
     the  explicit  components	mask  for a key are not changed by the automatic
     keyboard mapping.

     The explicit components masks are held in the explicit field of the  server
     map,  which  is  an array indexed by keycode. Each entry in this array is a
     mask that is a bitwise inclusive OR of the values shown in Table 1.
		    Table 1 Explicit Component Masks
     ---------------------------------------------------------------
     Bit in Explicit Mask   Value    Protects Against
     ---------------------------------------------------------------
     ExplicitKeyType1	    (1<<0)   Automatic determination of the
				     key   type   associated   with
				     Group1.
     ExplicitKeyType2	    (1<<1)   Automatic determination of the
				     key   type   associated   with
				     Group2.
     ExplicitKeyType3	    (1<<2)   Automatic determination of the
				     key   type   associated   with
				     Group3.
     ExplicitKeyType4	    (1<<3)   Automatic determination of the
				     key   type   associated   with
				     Group4.
     ExplicitInterpret	    (1<<4)   Application  of  any  of	the
				     fields of a symbol interpreta-
				     tion to the key in question.
     ExplicitAutoRepeat     (1<<5)   Automatic	 determination	 of
				     auto-repeat  status  for	the
				     key,  as specified in a symbol
				     interpretation.
     ExplicitBehavior	    (1<<6)   Automatic	assignment  of	the
				     XkbKB_Lock   behavior  to	the
				     key, if  the  XkbSI_LockingKey
				     flag is set in a symbol inter-
				     pretation.
     ExplicitVModMap	    (1<<7)   Automatic determination of the
				     virtual  modifier	map for the
				     key based on the  actions	as-
				     signed to the key and the sym-
				     bol interpretations that match
				     the key.

     XkbGetKeyExplicitComponents sends a request to the server to obtain the ex-
     plicit components for num keys on the keyboard starting with key first.  It
     waits  for  a  reply and returns the explicit components in the server->ex-
     plicit array of xkb.  If  successful,  XkbGetKeyExplicitComponents  returns
     Success.  The  xkb  parameter must be a pointer to a valid Xkb keyboard de-
     scription.

     If the server map in the xkb parameter has not been allocated, XkbGetKeyEx-
     plicitComponents allocates and initializes it before obtaining the actions.

     If the server does not have a compatible version of Xkb, or the Xkb  exten-
     sion has not been properly initialized, XkbGetKeyExplicitComponents returns
     BadMatch.	If num is less than 1 or greater than XkbMaxKeyCount, XkbGetKey-
     ExplicitComponents returns BadValue. If any allocation  errors  occur,  Xk-
     bGetKeyExplicitComponents returns BadAlloc.

DIAGNOSTICS
     BadAlloc	    Unable to allocate storage

     BadMatch	    A  compatible version of Xkb was not available in the server
		    or an argument has correct type and range, but is  otherwise
		    invalid

     BadValue	    An argument is out of range

X v11 Rel. 6.4			   20 Jul 1999	  XkbGetKeyExplicitComponents(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=XkbGetKeyExplicitComponents&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help