Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XGetSelectedExtensionEvents(3X11) — BSD/386 1.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought



XSelectExtensionEvent(3X11)X FUNCTIONSXSelectExtensionEvent(3X11)


NAME
       XSelectExtensionEvent,    XGetSelectedExtensionEvents    -
       select  extension  events,  get  the  list  of   currently
       selected extension events

SYNTAX
       XSelectExtensionEvent(display, w, eventlist, eventcount)
             Display *display;
             Window w;
             XEventClass *eventlist;
             int eventcount;

       XGetSelectedExtensionEvents(display,                    w,
       thisclienteventcountreturn,
       thisclienteventlistreturn,
       allclientseventcountreturn,
       allclientseventlistreturn)
             Display *display;
             Window w;
             int thisclienteventcountreturn;
             XEventClass *thisclienteventlistreturn;
             int allclientseventcountreturn;
             XEventClass *allclientseventlistreturn;

ARGUMENTS
       display     Specifies the connection to the X server.

       w           Specifies  the  window  whose  events  you are
                   interested in.

       eventlist  Specifies  the  list  of  event  classes  that
                   describe the events you are interested in.

       eventcount Specifies  the  count  of event classes in the
                   event list.

       thisclienteventcountreturn
                   Returns the count of event classes selected by
                   this client.

       thisclienteventlistreturn
                   Returns a pointer to the list of event classes
                   selected by this client.

       allclientseventcountreturn
                   Returns the count of event classes selected by
                   all clients.

       allclientseventlistreturn
                   Returns a pointer to the list of event classes
                   selected by all clients.

DESCRIPTION
       The XSelectExtensionEvent request causes the X  server  to



X Version 11                Release 5                           1




XSelectExtensionEvent(3X11)X FUNCTIONSXSelectExtensionEvent(3X11)


       report  the  events  associated with the specified list of
       event classes.  Initially, X will not report any of  these
       events.   Events  are reported relative to a window.  If a
       window is not interested in a  device  event,  it  usually
       propagates  to  the  closest  ancestor that is interested,
       unless the do_not_propagate mask prohibits it.

       Multiple clients can select for the  same  events  on  the
       same window with the following restrictions:

       o    Multiple clients can select events on the same window
            because their event masks are disjoint.  When  the  X
            server  generates  an  event,  it  reports  it to all
            interested clients.

       o    Only one client at a time can select a  DeviceButton-
            Press  event with automatic passive grabbing enabled,
            which is associated with the event  class  DeviceBut-
            tonPressGrab.   To  receive  DeviceButtonPress events
            without automatic passive grabbing, use  event  class
            DeviceButtonPress  but  do  not  specify  event class
            DeviceButtonPressGrab.

       The server reports the event to all interested clients.

       Information contained in the XDevice structure returned by
       XOpenDevice  is used by macros to obtain the event classes
       that clients use in making XSelectExtensionEvent requests.
       Currently    defined    macros   include   DeviceKeyPress,
       DeviceKeyRelease,  DeviceButtonPress,  DeviceButtonRelese,
       DeviceMotionNotify, DeviceFocusIn, DeviceFocusOut, Proxim-
       ityIn, ProximityOut, DeviceStateNotify,  DeviceMappiingNo-
       tify, ChangeDeviceNotify, DevicePointerMotionHint, Device-
       Button1Motion,  DeviceButton2Motion,  DeviceButton3Motion,
       DeviceButton4Motion,  DeviceButton5Motion, DeviceButtonMo-
       tion,  DeviceOwnerGrabButton,  DeviceButtonPressGrab,  and
       NoExtensionEvent.

       To  obtain the proper event class for a particular device,
       one of the above  macros  is  invoked  using  the  XDevice
       structure for that device.  For example,

       DeviceKeyPress (*device, type, eventclass);

       returns  the  DeviceKeyPress event type and the eventclass
       for selecting DeviceKeyPress events from this device.

       XSelectExtensionEvent can generate a BadWindow or BadClass
       error.   The  XGetSelectedExtensionEvents  request reports
       the extension events  selected  by  this  client  and  all
       clients  for  the  specified window.  This request returns
       pointers to two XEventClass arrays.  One lists  the  input
       extension  events  selected by this client from the speci-
       fied window.  The other lists the event  classes  selected



X Version 11                Release 5                           2




XSelectExtensionEvent(3X11)X FUNCTIONSXSelectExtensionEvent(3X11)


       by  all clients from the specified window.  You should use
       XFree to free these two arrays.

       XGetSelectedExtensionEvents  can  generate   a   BadWindow
       error.

DIAGNOSTICS
       BadWindow   A  value for a Window argument does not name a
                   defined Window.

       BadClass    A  value  for  an  XEventClass   argument   is
                   invalid.

SEE ALSO
       Programming with Xlib










































X Version 11                Release 5                           3


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026