1 /*****************************************************************************/
2 /**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **/
3 /**                          Salt Lake City, Utah                           **/
4 /**  Portions Copyright 1989 by the Massachusetts Institute of Technology   **/
5 /**                        Cambridge, Massachusetts                         **/
6 /**                                                                         **/
7 /**                           All Rights Reserved                           **/
8 /**                                                                         **/
9 /**    Permission to use, copy, modify, and distribute this software and    **/
10 /**    its documentation  for  any  purpose  and  without  fee is hereby    **/
11 /**    granted, provided that the above copyright notice appear  in  all    **/
12 /**    copies and that both  that  copyright  notice  and  this  permis-    **/
13 /**    sion  notice appear in supporting  documentation,  and  that  the    **/
14 /**    names of Evans & Sutherland and M.I.T. not be used in advertising    **/
15 /**    in publicity pertaining to distribution of the  software  without    **/
16 /**    specific, written prior permission.                                  **/
17 /**                                                                         **/
18 /**    EVANS & SUTHERLAND AND M.I.T. DISCLAIM ALL WARRANTIES WITH REGARD    **/
19 /**    TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES  OF  MERCHANT-    **/
20 /**    ABILITY  AND  FITNESS,  IN  NO  EVENT SHALL EVANS & SUTHERLAND OR    **/
21 /**    M.I.T. BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL  DAM-    **/
22 /**    AGES OR  ANY DAMAGES WHATSOEVER  RESULTING FROM LOSS OF USE, DATA    **/
23 /**    OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER    **/
24 /**    TORTIOUS ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE    **/
25 /**    OR PERFORMANCE OF THIS SOFTWARE.                                     **/
26 /*****************************************************************************/
27 
28 
29 /***********************************************************************
30  *
31  * $XConsortium: events.h,v 1.14 91/05/10 17:53:58 dave Exp $
32  *
33  * twm event handler include file
34  *
35  * 17-Nov-87 Thomas E. LaStrange		File created
36  *
37  ***********************************************************************/
38 
39 #ifndef _EVENTS_
40 #define _EVENTS_
41 
42 typedef void (*event_proc)();
43 
44 extern void InitEvents();
45 extern Bool StashEventTime();
46 extern Time lastTimestamp;
47 extern void SimulateMapRequest();
48 extern void AutoRaiseWindow();
49 #define LastTimestamp() lastTimestamp
50 extern Bool DispatchEvent();
51 extern Bool DispatchEvent2();
52 extern void HandleEvents();
53 extern void HandleExpose();
54 extern void HandleDestroyNotify();
55 extern void HandleMapRequest();
56 extern void HandleMapNotify();
57 extern void HandleUnmapNotify();
58 extern void HandleMotionNotify();
59 extern void HandleButtonRelease();
60 extern void HandleButtonPress();
61 extern void HandleEnterNotify();
62 extern void HandleLeaveNotify();
63 extern void HandleConfigureRequest();
64 extern void HandleClientMessage();
65 extern void HandlePropertyNotify();
66 extern void HandleKeyPress();
67 extern void HandleColormapNotify();
68 extern void HandleVisibilityNotify();
69 extern void HandleUnknown();
70 
71 extern event_proc EventHandler[];
72 extern Window DragWindow;
73 extern Window DragVirtual;
74 extern int origDragX;
75 extern int origDragY;
76 extern int DragX;
77 extern int DragY;
78 extern int DragWidth;
79 extern int DragHeight;
80 extern int CurrentDragX;
81 extern int CurrentDragY;
82 
83 extern int ButtonPressed;
84 extern int Cancel;
85 
86 extern XEvent Event;
87 
88 #endif /* _EVENTS_ */
89