Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* SunOS Virtual User Input Device (VUID) compatibility */ |
| 2 | |
| 3 | |
| 4 | typedef struct firm_event { |
| 5 | unsigned short id; /* tag for this event */ |
| 6 | unsigned char pair_type; /* unused by X11 */ |
| 7 | unsigned char pair; /* unused by X11 */ |
| 8 | int value; /* VKEY_UP, VKEY_DOWN or delta */ |
| 9 | struct timeval time; |
| 10 | } Firm_event; |
| 11 | |
| 12 | enum { |
| 13 | FE_PAIR_NONE, |
| 14 | FE_PAIR_SET, |
| 15 | FE_PAIR_DELTA, |
| 16 | FE_PAIR_ABSOLUTE |
| 17 | }; |
| 18 | |
| 19 | /* VUID stream formats */ |
| 20 | #define VUID_NATIVE 0 /* Native byte stream format */ |
| 21 | #define VUID_FIRM_EVENT 1 /* send firm_event structures */ |
| 22 | |
| 23 | /* ioctls */ |
| 24 | /* Set input device byte stream format (any of VUID_{NATIVE,FIRM_EVENT}) */ |
| 25 | #define VUIDSFORMAT _IOW('v', 1, int) |
| 26 | /* Retrieve input device byte stream format */ |
| 27 | #define VUIDGFORMAT _IOR('v', 2, int) |
| 28 | |
| 29 | /* Possible tag values */ |
| 30 | /* mouse buttons: */ |
| 31 | #define MS_LEFT 0x7f20 |
| 32 | #define MS_MIDDLE 0x7f21 |
| 33 | #define MS_RIGHT 0x7f22 |
| 34 | /* motion: */ |
| 35 | #define LOC_X_DELTA 0x7f80 |
| 36 | #define LOC_Y_DELTA 0x7f81 |
| 37 | #define LOC_X_ABSOLUTE 0x7f82 /* X compat, unsupported */ |
| 38 | #define LOC_Y_ABSOLUTE 0x7f83 /* X compat, unsupported */ |
| 39 | |
| 40 | #define VKEY_UP 0 |
| 41 | #define VKEY_DOWN 1 |