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