]> icculus.org git repositories - btb/d2x.git/blob - arch/dos/include/mouse.h
Duplicate file removal.
[btb/d2x.git] / arch / dos / include / mouse.h
1 /*
2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.  
11 COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
12 */
13 /*
14  * $Source: /cvs/cvsroot/d2x/arch/dos/include/mouse.h,v $
15  * $Revision: 1.1.1.2 $
16  * $Author: bradleyb $
17  * $Date: 2001-01-19 03:33:52 $
18  *
19  * Header for mouse functions
20  *
21  * $Log: not supported by cvs2svn $
22  * Revision 1.1.1.1  1999/06/14 22:00:13  donut
23  * Import of d1x 1.37 source.
24  *
25  * Revision 1.10  1995/02/02  10:22:29  john
26  * Added cyberman init parameter.
27  * 
28  * Revision 1.9  1994/11/18  23:18:09  john
29  * Changed some shorts to ints.
30  * 
31  * Revision 1.8  1994/09/13  12:33:49  john
32  * Added functions to get down count and state.
33  * 
34  * Revision 1.7  1994/08/29  20:52:20  john
35  * Added better cyberman support; also, joystick calibration
36  * value return funcctiionn,
37  * 
38  * Revision 1.6  1994/08/24  17:54:35  john
39  * *** empty log message ***
40  * 
41  * Revision 1.5  1994/08/24  17:51:43  john
42  * Added transparent cyberman support
43  * 
44  * Revision 1.4  1993/07/27  09:32:22  john
45  * *** empty log message ***
46  * 
47  * Revision 1.3  1993/07/26  10:46:44  john
48  * added definition for mouse_set_pos
49  * 
50  * Revision 1.2  1993/07/22  13:07:59  john
51  * added header for mousesetlimts
52  * 
53  * Revision 1.1  1993/07/10  13:10:40  matt
54  * Initial revision
55  * 
56  *
57  */
58
59 #ifndef MOUSE_H
60 #define MOUSE_H
61
62 #include "pstypes.h"
63 #include "fix.h"
64
65 #define MB_LEFT                 0
66 #define MB_RIGHT                        1
67 #define MB_MIDDLE                       2
68 #define MB_Z_UP                 3
69 #define MB_Z_DOWN                       4
70 #define MB_PITCH_BACKWARD       5
71 #define MB_PITCH_FORWARD 6
72 #define MB_BANK_LEFT            7
73 #define MB_BANK_RIGHT   8
74 #define MB_HEAD_LEFT            9
75 #define MB_HEAD_RIGHT   10
76
77 #define MOUSE_LBTN 1
78 #define MOUSE_RBTN 2
79 #define MOUSE_MBTN 4
80
81 //#define NOMOUSE
82
83 #ifndef NOMOUSE
84
85 //========================================================================
86 // Check for mouse driver, reset driver if installed. returns number of
87 // buttons if driver is present.
88
89 extern int mouse_init(int enable_cyberman);
90 extern void mouse_set_limits( int x1, int y1, int x2, int y2 );
91 extern void mouse_flush();      // clears all mice events...
92
93 //========================================================================
94 // Shutdowns mouse system.
95 extern void mouse_close();
96
97 //========================================================================
98 extern void mouse_get_pos( int *x, int *y);
99 extern void mouse_get_delta( int *dx, int *dy );
100 extern int mouse_get_btns();
101 extern void mouse_set_pos( int x, int y);
102 extern void mouse_get_cyberman_pos( int *x, int *y );
103
104 // Returns how long this button has been down since last call.
105 extern fix mouse_button_down_time(int button);
106
107 // Returns how many times this button has went down since last call.
108 extern int mouse_button_down_count(int button);
109
110 // Returns 1 if this button is currently down
111 extern int mouse_button_state(int button);
112
113
114 #else
115 // NOMOUSE
116 #define mouse_init(a) -1
117 #define mouse_set_limits(a,b,c,d) -1
118 #define mouse_flush()
119 #define mouse_close()
120 #define mouse_get_pos(a,b)
121 #define mouse_get_delta(a,b)
122 #define mouse_get_btns() 0
123 #define mouse_set_pos(a,b)
124 #define mouse_get_cyberman_pos(a,b)
125 #define mouse_button_down_time(a) 0
126 #define mouse_button_down_count(a) 0
127 #define mouse_button_state(a) 0
128
129 #endif
130
131
132 #endif