Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

xtaddeventhandler(1) [hpux man page]

XtAddEventHandler()													       XtAddEventHandler()

Name
  XtAddEventHandler - register a procedure to be called when specified events occur on a widget.

Synopsis
  void XtAddEventHandler(w, event_mask, nonmaskable, proc, client_data)
	 Widget w;
	 EventMask event_mask;
	 Boolean nonmaskable;
	 XtEventHandler proc;
	 XtPointer client_data;

Inputs
  w	    Specifies the widget for which this event handler is being registered.  Must be of class Core or any subclass thereof.

  event_mask
	    Specifies the event type that will trigger the handler.

  nonmaskable
	    Specifies whether this procedure should be called on nonmaskable event types.

  proc	    Specifies the handler procedure.

  client_data
	    Specifies additional data to be passed to the event handler.

Description
  XtAddEventHandler()  registers  the procedure proc and the data client_data with the Intrinsics event dispatching mechanism.	When an event
  of one of the types set in event_mask occurs on the window of the widget w, proc will be invoked and client_data passed as one of its argu-
  ments.   If  the  window  of the widget is not already receiving events of the specified types, XtAddEventHandler() calls XSelectInput() to
  ensure that they will be delivered.  Additionally, if the handler is registered with the nonmaskable argument True, then it  will  also  be
  invoked when any of the nonmaskable event types occur.  These events are GraphicsExpose, NoExpose, SelectionClear, SelectionRequest, Selec-
  tionNotify, ClientMessage, and MappingNotify.  Ordinarily, nonmaskable events are of interest only to the Intrinsics.

  If the specified procedure/data pair has already been registered for this widget, then the event_mask  argument  augments  the  event  mask
  already  registered for the handler, and the procedure will only be called once for any particular event.  The same procedure may be regis-
  tered multiple times with different values of client_data, and each instance will be treated as a separate handler.

  See XtEventHandler(2) for an explanation of how to write an event handler procedure.

Usage
  Neither applications nor widgets often need to use event handlers.  Using action procedures and translation tables provides a more flexible
  way to respond to input events.

  The  Intrinsics do not specify the order in which event handlers will be called when an event arrives.  As of Release 4, however, the func-
  tion XtInsertEventHandler() will register an event handler that will be called before or after all previously registered handlers.

  An event handler can be removed with XtRemoveEventHandler().

Structures
  Each of the event mask symbols listed in the table below set a single bit in an event mask.  The event_mask argument is formed by combining
  these  symbols with the bitwise OR operator ( ).  Note that the nonmaskable event types do not appear in this table and cannot be requested
  in an event mask.

NoEventMask		Button1MotionMask      StructureNotifyMask
KeyPressMask		Button2MotionMask      ResizeRedirectMask
KeyReleaseMask		Button3MotionMask      SubstructureNotifyMask
ButtonPressMask 	Button4MotionMask      SubstructureRedirectMask
ButtonReleaseMask	Button5MotionMask      FocusChangeMask
EnterWindowMask 	ButtonMotionMask       PropertyChangeMask
LeaveWindowMask 	KeymapStateMask        ColormapChangeMask

PointerMotionMask	ExposureMask	       OwnerGrabButtonMask
PointerMotionHintMask	VisibilityChangeMask

See Appendix C, Event Reference, for more information on event types and masks.

See Also
  XtAddRawEventHandler(1), XtInsertEventHandler(1), XtRemoveEventHandler(1),
  XtEventHandler(2).

Xt - Event Handling													       XtAddEventHandler()

Check Out this Related Man Page

XtAddRawEventHandler()													    XtAddRawEventHandler()

Name
  XtAddRawEventHandler - register an event handler without selecting for the event.

Synopsis
  void XtAddRawEventHandler(w, event_mask, nonmaskable, proc, client_data)
	 Widget w;
	 EventMask event_mask;
	 Boolean nonmaskable;
	 XtEventHandler proc;
	 XtPointer client_data;

Inputs
  w	    Specifies the widget for which this event handler is being registered.  Must be of class Core or any subclass thereof.

  event_mask
	    Specifies the event type that will trigger the handler.

  nonmaskable
	    Specifies whether this procedure should be called on nonmaskable event types.

  proc	    Specifies the handler procedure.

  client_data
	    Specifies additional data to be passed to the event handler.

Description
  XtAddRawEventHandler()  registers  the  procedure  proc  and the data client_data with the Intrinsics event dispatching mechanism.  When an
  event of one of the types set in event_mask occurs on the window of the widget w, proc will be invoked and client_data passed as one of its
  arguments.   Additionally,  if  the  handler is registered with the nonmaskable argument True, then it will also be invoked when any of the
  nonmaskable event types occur.  These events are GraphicsExpose, NoExpose, SelectionClear,  SelectionRequest,  SelectionNotify,  ClientMes-
  sage, and MappingNotify.  Ordinarily, nonmaskable events are of interest only to the Intrinsics.

  XtAddRawEventHandler() is similar to XtAddEventHandler() except that it never causes an XSelectInput() call to be made for its events.  The
  event mask in XtAddRawEventHandler() indicates which events the handler will be called in response to,  but  only  when  these  events  are
  selected elsewhere.

  If  the  specified  procedure/data  pair  has already been registered for this widget, then the event_mask argument augments the event mask
  already registered for the handler, and the procedure will only be called once for any particular event.  The same procedure may be  regis-
  tered multiple times with different values of client_data, and each instance will be treated as a separate handler.

  See XtEventHandler(2) for an explanation of how to write an event handler procedure.

Usage
  You rarely need to register a raw event handler.  XtAddEventHandler is sufficient in most cases.  In particular, you do not need to use raw
  event handlers to avoid redundant calls to XSelectInput().  The Intrinsics keep track of the event mask of each widget and calls XSelectIn-
  put() only when necessary.

  The  Intrinsics do not specify the order in which event handlers will be called when an event arrives.  As of Release 4, however, the func-
  tion XtInsertRawEventHandler() will register a raw event handler that will be called before or after all previously registered handlers.

  Raw event handlers are removed with a call to XtRemoveRawEventHandler().

Structures
  Each of the event types listed in the table below set a single bit in an event mask.	The event_mask argument is formed by combining	these
  symbols  with the bitwise OR operator ( ).  Note that the nonmaskable event types do not appear in this table and cannot be requested in an
  event mask.

NoEventMask		Button1MotionMask      StructureNotifyMask
KeyPressMask		Button2MotionMask      ResizeRedirectMask
KeyReleaseMask		Button3MotionMask      SubstructureNotifyMask

ButtonPressMask 	Button4MotionMask      SubstructureRedirectMask
ButtonReleaseMask	Button5MotionMask      FocusChangeMask
EnterWindowMask 	ButtonMotionMask       PropertyChangeMask
LeaveWindowMask 	KeymapStateMask        ColormapChangeMask
PointerMotionMask	ExposureMask	       OwnerGrabButtonMask
PointerMotionHintMask	VisibilityChangeMask

See Appendix C, Event Reference, for more information on event types and masks.

See Also
  XtAddEventHandler(1), XtInsertRawEventHandler(1), XtRemoveRawEventHandler(1),
  XtEventHandler(2).

Xt - Event Handling													    XtAddRawEventHandler()
Man Page