00001 #ifndef __XMOUSE_H
00002 #define __XMOUSE_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #include "mouse.h"
00033
00034
00035
00036 #ifdef __cplusplus
00037 extern "C" {
00038 #endif
00039
00040
00041
00042 VOID xmouse_initialize( VOID );
00043 UINT16 xmouse_get( INT16* x, INT16* y );
00044 UINT16 xmouse_getstat( INT16* x, INT16* y );
00045
00046
00047
00048 #ifdef __cplusplus
00049 }
00050 #endif
00051
00052
00053
00054
00055
00056
00057 #define XMOUSE_MOUSE ((UINT16)0x0800)
00058 #define xmouse_ismouse(n) ((n)&XMOUSE_MOUSE)
00059
00060 #define XMOUSE_LKEY ((UINT16)0x0200)
00061 #define XMOUSE_RKEY ((UINT16)0x0400)
00062 #define XMOUSE_BKEY (XMOUSE_LKEY|XMOUSE_RKEY)
00063 #define XMOUSE_STATBITS XMOUSE_BKEY
00064
00065 #define xmouse_testlkey(n) ((n) & XMOUSE_LKEY)
00066 #define xmouse_testrkey(n) ((n) & XMOUSE_RKEY)
00067 #define xmouse_testbkey(n) (((n) & XMOUSE_BKEY)==XMOUSE_BKEY)
00068 #define xmouse_setlkey(n) ((n) | XMOUSE_LKEY)
00069 #define xmouse_setrkey(n) ((n) | XMOUSE_RKEY)
00070 #define xmouse_setbkey(n) ((n) | XMOUSE_BKEY)
00071 #define xmouse_resetlkey(n) ((n) & ~XMOUSE_LKEY)
00072 #define xmouse_resetrkey(n) ((n) & ~XMOUSE_RKEY)
00073 #define xmouse_resetbkey(n) ((n) & ~XMOUSE_BKEY)
00074
00075 #define xmouse_resetstat(k) ((k) & ~XMOUSE_STATBITS)
00076 #define xmouse_peekstat(k) ((k) & XMOUSE_STATBITS)
00077
00078
00079
00080
00081
00082 #define __MK XMOUSE_MOUSE
00083
00084
00085
00086 enum MouseEvType {
00087 M_None = 0x000,
00088 M_Move = __MK | 0x100,
00089 M_LDown = __MK | 0x101,
00090 M_RDown = __MK | 0x102,
00091 M_BDown = __MK | 0x103,
00092 M_LUp = __MK | 0x104,
00093 M_RUp = __MK | 0x105,
00094 M_BUp = __MK | 0x106,
00095 M_LDownRep = __MK | 0x107,
00096 M_RDownRep = __MK | 0x108,
00097 M_BDownRep = __MK | 0x109,
00098 };
00099
00100
00101 #undef __MK
00102
00103
00104
00105 #endif