


XCrossingEvent(3X11)					 XCrossingEvent(3X11)
X11R5									X11R5



NAME
  XCrossingEvent - EnterNotify and LeaveNotify event structure

STRUCTURES
  The structure	for _E_n_t_e_r_N_o_t_i_f_y	and _L_e_a_v_e_N_o_t_i_f_y	events contains:

  typedef struct {
	  int type;	  /* EnterNotify or LeaveNotify	*/
	  unsigned long	serial;	  /* # of last request processed by server */
	  Bool send_event;	  /* true if this came from a SendEvent	request	*/
	  Display *display;	  /* Display the event was read	from */
	  Window window;  /* ``event'' window reported relative	to */
	  Window root;	  /* root window that the event	occurred on */
	  Window subwindow;	  /* child window */
	  Time time;	  /* milliseconds */
	  int x, y;	  /* pointer x,	y coordinates in event window */
	  int x_root, y_root;	  /* coordinates relative to root */
	  int mode;	  /* NotifyNormal, NotifyGrab, NotifyUngrab */
	  int detail;
		  /*
		  * NotifyAncestor, NotifyVirtual, NotifyInferior,
		  * NotifyNonlinear,NotifyNonlinearVirtual
		  */
	  Bool same_screen;	  /* same screen flag */
	  Bool focus;	  /* boolean focus */
	  unsigned int state;	  /* key or button mask	*/
  } XCrossingEvent;
  typedef XCrossingEvent XEnterWindowEvent;
  typedef XCrossingEvent XLeaveWindowEvent;

  When you receive these events, the structure members are set as follows.

  The type member is set to the	event type constant name that uniquely iden-
  tifies it.  For example, when	the X server reports a _G_r_a_p_h_i_c_s_E_x_p_o_s_e event
  to a client application, it sends an _X_G_r_a_p_h_i_c_s_E_x_p_o_s_e_E_v_e_n_t structure with
  the type member set to _G_r_a_p_h_i_c_s_E_x_p_o_s_e.  The display member is	set to a
  pointer to the display the event was read on.	 The send_event	member is set
  to _T_r_u_e if the event came from a _S_e_n_d_E_v_e_n_t protocol request.	The serial
  member is set	from the serial	number reported	in the protocol	but expanded
  from the 16-bit least-significant bits to a full 32-bit value.  The window
  member is set	to the window that is most useful to toolkit dispatchers.

  The window member is set to the window on which the _E_n_t_e_r_N_o_t_i_f_y or _L_e_a_v_e_N_o_-
  _t_i_f_y event was generated and is referred to as the event window. This	is
  the window used by the X server to report the	event, and is relative to the
  root window on which the event occurred. The root member is set to the root
  window of the	screen on which	the event occurred.

  For a	_L_e_a_v_e_N_o_t_i_f_y event, if a	child of the event window contains the ini-
  tial position	of the pointer,	the subwindow component	is set to that child.
  Otherwise, the X server sets the subwindow member to _N_o_n_e.  For an _E_n_t_e_r_N_o_-
  _t_i_f_y event, if a child of the	event window contains the final	pointer
  position, the	subwindow component is set to that child or _N_o_n_e.

  The time member is set to the	time when the event was	generated and is
  expressed in milliseconds.  The x and	y members are set to the coordinates
  of the pointer position in the event window.	This position is always	the
  pointer's final position, not	its initial position.  If the event window is
  on the same screen as	the root window, x and y are the pointer coordinates
  relative to the event	window's origin. Otherwise, x and y are	set to zero.
  The x_root and y_root	members	are set	to the pointer's coordinates relative
  to the root window's origin at the time of the event.

  The same_screen member is set	to indicate whether the	event window is	on
  the same screen as the root window and can be	either _T_r_u_e or _F_a_l_s_e.  If
  _T_r_u_e,	the event and root windows are on the same screen.  If _F_a_l_s_e, the
  event	and root windows are not on the	same screen.

  The focus member is set to indicate whether the event	window is the focus
  window or an inferior	of the focus window.  The X server can set this
  member to either _T_r_u_e	or _F_a_l_s_e.  If _T_r_u_e, the	event window is	the focus
  window or an inferior	of the focus window.  If _F_a_l_s_e,	the event window is
  not the focus	window or an inferior of the focus window.

  The state member is set to indicate the state	of the pointer buttons and
  modifier keys	just prior to the event.  The X	server can set this member to
  the bitwise inclusive	OR of one or more of the button	or modifier key
  masks: _B_u_t_t_o_n_1_M_a_s_k, _B_u_t_t_o_n_2_M_a_s_k, _B_u_t_t_o_n_3_M_a_s_k,	_B_u_t_t_o_n_4_M_a_s_k, _B_u_t_t_o_n_5_M_a_s_k,
  _S_h_i_f_t_M_a_s_k, _L_o_c_k_M_a_s_k, _C_o_n_t_r_o_l_M_a_s_k, _M_o_d_1_M_a_s_k, _M_o_d_2_M_a_s_k,	_M_o_d_3_M_a_s_k, _M_o_d_4_M_a_s_k,
  _M_o_d_5_M_a_s_k.

  The mode member is set to indicate whether the events	are normal events,
  pseudo-motion	events when a grab activates, or pseudo-motion events when a
  grab deactivates.  The X server can set this member to _N_o_t_i_f_y_N_o_r_m_a_l,
  _N_o_t_i_f_y_G_r_a_b, or _N_o_t_i_f_y_U_n_g_r_a_b.

  The detail member is set to indicate the notify detail and can be
  _N_o_t_i_f_y_A_n_c_e_s_t_o_r, _N_o_t_i_f_y_V_i_r_t_u_a_l, _N_o_t_i_f_y_I_n_f_e_r_i_o_r, _N_o_t_i_f_y_N_o_n_l_i_n_e_a_r, or
  _N_o_t_i_f_y_N_o_n_l_i_n_e_a_r_V_i_r_t_u_a_l.

SEE ALSO
  XAnyEvent(3X11), XButtonEvent(3X11), XCreateWindowEvent(3X11),
  XCirculateEvent(3X11), XCirculateRequestEvent(3X11), XColormapEvent(3X11),
  XConfigureEvent(3X11), XConfigureRequestEvent(3X11),
  XDestroyWindowEvent(3X11), XErrorEvent(3X11),	XExposeEvent(3X11),
  XFocusChangeEvent(3X11), XGraphicsExposeEvent(3X11), XGravityEvent(3X11),
  XKeymapEvent(3X11), XMapEvent(3X11), XMapRequestEvent(3X11),
  XPropertyEvent(3X11),	XReparentEvent(3X11), XResizeRequestEvent(3X11),
  XSelectionClearEvent(3X11), XSelectionEvent(3X11),
  XSelectionRequestEvent(3X11),	XUnmapEvent(3X11), XVisibilityEvent(3X11)
  _X_l_i_b - _C _L_a_n_g_u_a_g_e _X _I_n_t_e_r_f_a_c_e























