1 /*        $NetBSD: mouse.h,v 1.2 2000/01/23 21:01:57 soda Exp $       */
2 /*        $OpenBSD: mouse.h,v 1.2 1996/06/06 23:06:52 deraadt Exp $   */
3 /*        NetBSD: mouse.h,v 1.4 1994/10/27 04:16:10 cgd Exp           */
4 
5 /*-
6  * Copyright (c) 1992, 1993 Erik Forsberg.
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions
11  * are met:
12  * 1. Redistributions of source code must retain the above copyright
13  *    notice, this list of conditions and the following disclaimer.
14  *
15  * THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY EXPRESS OR IMPLIED
16  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
17  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN
18  * NO EVENT SHALL I BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
19  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
20  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
21  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
22  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
23  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25  */
26 
27 #ifndef _MOUSE_H_
28 #define _MOUSE_H_
29 
30 struct mouseinfo {
31           unsigned char status;
32           char xmotion, ymotion;
33 };
34 
35 #define BUTSTATMASK 0x07      /* Any mouse button down if any bit set */
36 #define BUTCHNGMASK 0x38      /* Any mouse button changed if any bit set */
37 
38 #define BUT3STAT    0x01      /* Button 3 down if set */
39 #define BUT2STAT    0x02      /* Button 2 down if set */
40 #define BUT1STAT    0x04      /* Button 1 down if set */
41 #define BUT3CHNG    0x08      /* Button 3 changed if set */
42 #define BUT2CHNG    0x10      /* Button 2 changed if set */
43 #define BUT1CHNG    0x20      /* Button 1 changed if set */
44 #define MOVEMENT    0x40      /* Mouse movement detected */
45 
46 /* Ioctl definitions */
47 
48 #define MOUSEIOC        ('M'<<8)
49 #define MOUSEIOCREAD    (MOUSEIOC|60)
50 
51 #endif /* !_MOUSE_H_ */
52