XHPGetDeviceFocus man page on HP-UX

Man page or keyword search:  
man Server   10987 pages
apropos Keyword Search (all sections)
Output format
HP-UX logo
[printable version]

XHPGetDeviceFocus(3X)					 XHPGetDeviceFocus(3X)

NAME
       XHPGetDeviceFocus - Get the focus window ID for an extension input
       device.

       XHPGetDeviceMotionEvents - Get the motion history buffer for a device.

       XHPGetDeviceControl - Get the control attributes of an extension input
       device.

       XHPGetDeviceKeyMapping - Get the key mapping of an extension input
       device.

       XHPGetDeviceModifierMapping - Get the modifier mapping of an extension
       input device.

SYNOPSIS
       int XHPGetDeviceFocus (display, deviceid, focus_return, revert_to_return)
	    Display   *display;
	    XID	      deviceid;
	    Window    *focus_return;
	    int	      *revert_to_return;

       XHPTimeCoord *XHPGetDeviceMotionEvents (display, deviceid, w, start,
	    stop, nevents_return)
	    Display   *display;
	    XID	      deviceid;
	    Window    w;
	    Time      start, stop;
	    int	      *nevents_return;

       int XHPGetDeviceControl (display, deviceid, values_return)
	       Display		     *display;
	       XID	       deviceid;
	       XHPDeviceState  *values_return;

       KeySym
       *XHPGetDeviceKeyMapping (display, deviceid, first_keycode_wanted,
		      keycode_count, keysyms_per_keycode_return)
	       Display		   *display;
	       XID	       deviceid;
	       KeyCode	      first_keycode_wanted;
	       int		keycode_count;
	       int		*keysyms_per_keycode_return;

       XModifierKeymap
       *XHPGetDeviceModifierMapping (display, deviceid)
	       Display		*display;
	       XID	   deviceid;

ARGUMENTS
       display			     Specifies the connection to the X server.

       deviceid			     Specifies the ID of the desired device.

XHPGetDeviceFocus Only
       focus_return		     Specifies the address of a variable into
				     which the server can return the ID of the
				     window that contains the device focus.

       revert_to_return		     Specifies the address of a variable into
				     which the server can return the current
				     revert_to status for the device.

XHPGetDeviceMotionEvents Only
       window			     Must contain the constant ALLWINDOWS.

       start			     Specifies the start time.

       stop			     Specifies the stop time.

       nevents_return		     Specifies the address of a variable into
				     which the server will return the number
				     of events in the motion buffer returned
				     for this request.

XHPGetDeviceControl Only
       values_return		     Specifies a pointer to an XHPDeviceState
				     structure in which the device values will
				     be returned.

XHPGetDeviceKeyMapping Only
       first_keycode_wanted	     Specifies the first keycode that is to be
				     returned.

       keycode_count		     Specifies the number of keycodes that are
				     to be returned.

       keysyms_per_keycode_return    Returns the number of keysyms per
				     keycode.

DESCRIPTION
       These requests are part of an HP-proprietary extension to X.  Their
       functionality has been superseded by standard X input device extension
       requests.  You should use XGetDeviceFocus instead of XHPGetDeviceFocus,
       XGetDeviceMotionEvents instead of XHPGetDeviceMotionEvents,
       XGetFeedbackControl instead of XHPGetDeviceControl,
       XGetDeviceKeyMapping instead of XHPGetDeviceKeyMapping, and
       XGetDeviceModifierMapping instead of XHPGetDeviceModifierMapping if
       possible.

       These requests are provided to support the use of input devices other
       than the X keyboard device and X pointer device.

XHPGetDeviceFocus
       XHPGetDeviceFocus allows a client to determine the focus for a
       particular extended input device.  It returns the focus window id and
       the current focus state of the specified extended input device.

       This request may not be used to determine the focus of the X keyboard
       device.	The XGetInputFocus request should be used for that purpose.

XHPGetDeviceMotionEvents
       This request returns all events in the device's motion history buffer
       that fall between the specified start and stop times inclusive.	If the
       start time is in the future, or is later than the stop time, no events
       are returned.

       For all currently supported input devices, the window parameter must be
       the constant ALLWINDOWS, which can be obtained by including
       <X11/XHPlib.h>.

       The return type for this request is a structure defined as follows:

       typedef struct {
	    Time time;
	    unsigned short *data;
       } XHPTimeCoord;

       In order to correctly interpret the data returned by this request,
       client programs need information about the device that generated that
       data.  This information is reported by the XHPListInputDevices request.

       The data field of the XHPTimeCoord structure is a pointer to an array
       of data items.  Each item is of type short, and there is one data item
       per axis of motion reported by the device.  The number of axes reported
       by the device can be determined from the num_axes field of the
       HPDeviceList structure for the device that is returned by the
       XHPListInputDevices request.

       The value of the data items depends on the mode of the device, which is
       reported in the mode field of the XHPDeviceList request, and may be
       compared to constants defined in <X11/XHPlib.h>.	 If the mode is
       ABSOLUTE, the data items are the raw values generated by the device.
       These may be scaled by the client program using the maximum values that
       the device can generate for each axis of motion that it reports.	 The
       maximum value for each axis is reported in the XHPaxis_info structure
       pointed to by the XHPDeviceList structure.

       If the mode is RELATIVE, the data items are the relative values
       generated by the device.	 The client program must choose an initial
       position for the device and maintain a current position by accumulating
       these relative values.

       The client program should use XFree to free the data returned by this
       request.

       This request is not valid for the X pointer device, or for devices that
       do not generate motion events.  Invoking this request for an invalid
       device will result in a BadDevice error.

       The motion history buffer for the X pointer device can be obtained by
       using the XGetMotionEvents(3x) request.

EXAMPLE
       The following code fragment shows how positional data could be received
       from a graphics tablet via the motion buffer.   It assumes that the
       client only is interested in the first two axes of motion.

       #include <X11/XHPlib.h>

       /* Find the graphics tablet information via XHPListInputDevices */
       /* Scale the input to a window whose origin is at winx, winy    */
       /* and whose size is winw by winh.			       */

       slist = XHPListInputDevices (disp, &ndevices);
       for (i=0,list=slist; i<ndevices; i++,list++)
	   if (list->type == TABLET)
	    {
	    XHPSetInputDevice (disp, list->x_id, (ON | DEVICE_EVENTS));
	    tablet = list->x_id;
	    ax = list->axes;
	    if (list->mode == ABSOLUTE)
		{
		scalex = (float) winw / (float) (ax++)->max_val;
		scaley = (float) winh / (float) (ax++)->max_val;
		}
	    else
		{
		scalex = 1;
		scaley = 1;
		}
	    axes = list->num_axes;
	    }
       XHPFreeDeviceList (slist);

       buf = XHPGetDeviceMotionEvents (disp, tablet, ALLWINDOWS,
	    start, stop, &nevents);
       savbuf = buff;

       for (i=0; i<nevents; i++)
	   {
	   dp = buf->data;
	   time = buf->time;
	   x = winx + (*dp++ * scalex);
	   y = winy + (*dp++ * scaley);

	   /* now do something with the motion data. */

	   buf++;
	   }

       XFree (savbuf);

XHPGetDeviceControl
       The XHPGetDeviceControl request returns the control attributes of the
       device in the XHPDeviceState structure.

       The fields of the XHPDeviceState structure are defined as follows:

       typedef struct {
	       int key_click_percent;
	       int bell_percent;
	       unsigned int bell_pitch;
	       unsigned int bell_duration;
	       unsigned long led_mask;
	       int global_auto_repeat;
	       int accelNumerator;
	       int accelDenominator;
	       int threshold;
	    char auto_repeats[32];
       } XHPDeviceState;

       For the LEDs, the least significant bit of led_mask corresponds to LED
       one, and each bit set to 1 in led_mask indicates an LED that is lit.
       The auto_repeats member is a bit vector. Each bit set to 1 indicates
       that auto-repeat is enabled for the corresponding key.  The vector is
       represented as 32 bytes.	 Byte N (from 0) contains the bits for keys 8N
       to 8N+7, with the least significant bit in the byte representing key
       8N.  The global_auto_repeat member can be set to either
       AutoRepeatModeOn or AutoRepeatModeOff.

XHPGetDeviceKeyMapping
       The XHPGetDeviceKeyMapping request, starting with first_keycode,
       returns the symbols for the specified number of KeyCodes.  The value
       specified in the first_keycode argument must be greater than or equal
       to min_keycode as returned by the XHPListInputDevices request.
       Otherwise, XHPGetDeviceKeyMapping generates a BadValue error.  In
       addition, the following expression must be less than or equal to
       max_keycode as returned by the XHPListInputDevices request:

       first_keycode + keycode_count - 1

       If this is not the case, a BadValue error is generated.	The number of
       elements in the KeySyms list is:

       keycode_count * keysyms_per_keycode_return

       KeySym number N, counting from zero, for KeyCode K has the following
       index in the list, counting from zero:

       (K - first_code) * keysyms_per_code + N

       The keysyms_per_keycode_return value is chosen arbitrarily by the X
       server to be large enough to report all requested symbols.  A special
       KeySym value of NoSymbol is used to fill in unused elements for
       individual KeyCodes.

       To free the storage returned by XHPGetDeviceKeyMapping, use XFree.

XHPGetDeviceModifierMapping
       The XHPGetDeviceModifierMapping request returns a newly created
       XModifierKeymap structure that contains the keys being used as
       modifiers for the specified device.  The structure should be freed
       after use by calling XFreeModifiermap.  If only zero values appear in
       the set for any modifier,  that modifier is disabled.

DIAGNOSTICS
       XHPGetDeviceKeyMapping can generate BadDevice and BadValue errors.

       BadDevice   The specified device does not exist, was not previously
		   enabled via XHPSetInputDevice, or is the X system pointer
		   or X system keyboard.

       BadValue	   One of the values specified was beyond the range of valid
		   values.

RETURN VALUE
       XHPGetDeviceMotionEvents returns a pointer to the motion history
       buffer.

       XHPGetDeviceKeyMapping returns a pointer to an array of KeySyms.

       XHPGetDeviceModifierMapping returns an XModifierMap structure that
       contains the keys being used as modifiers for the device.

FILES
       none

ORIGIN
       Hewlett-Packard Company

SEE ALSO
       XGetInputFocus(3x)
       XHPListInputDevices(3x)
       XHPSetDeviceFocus(3x)
       XGetMotionEvents(3x)
       XHPListInputDevices(3x)
       XHPChangeDeviceControl(3x)
       XGetKeyboardControl(3x)
       XChangeKeyboardControl(3x)
       XGetPointerControl(3x)
       XChangePointerControl(3x)
       XHPChangeDeviceKeyMapping(3x)
       XGetKeyboardMapping(3x)
       XChangeKeyboardMapping(3x)
       XGetModifierMapping(3x)
       XChangeModifierMapping(3x)
       XHPSetDeviceModifierMapping(3x)

X Version 11			   Release 5		 XHPGetDeviceFocus(3X)
[top]

List of man pages available for HP-UX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net