Running object table are not using 0 as a valid index anymore.
[wine.git] / include / mouse.h
blob9a0e254bc64eb0152d0f932f74f3aca1116b8897
1 /*
2 * MOUSE driver interface
4 * Copyright 1998 Ulrich Weigand
5 */
7 #ifndef __WINE_MOUSE_H
8 #define __WINE_MOUSE_H
10 #include "windef.h"
12 struct tagCURSORICONINFO;
14 #include "pshpack1.h"
15 typedef struct _MOUSEINFO
17 BYTE msExist;
18 BYTE msRelative;
19 WORD msNumButtons;
20 WORD msRate;
21 WORD msXThreshold;
22 WORD msYThreshold;
23 WORD msXRes;
24 WORD msYRes;
25 WORD msMouseCommPort;
26 } MOUSEINFO, *LPMOUSEINFO;
27 #include "poppack.h"
29 typedef VOID (CALLBACK *LPMOUSE_EVENT_PROC)(DWORD,DWORD,DWORD,DWORD,DWORD);
31 WORD WINAPI MOUSE_Inquire(LPMOUSEINFO lpMouseInfo);
32 VOID WINAPI MOUSE_Enable(LPMOUSE_EVENT_PROC lpMouseEventProc);
33 VOID WINAPI MOUSE_Disable(VOID);
35 /* Wine internals */
37 typedef struct tagMOUSE_DRIVER {
38 VOID (*pInit)(VOID);
39 VOID (*pSetCursor)(struct tagCURSORICONINFO *);
40 VOID (*pMoveCursor)(WORD, WORD);
41 BOOL (*pEnableWarpPointer)(BOOL);
42 } MOUSE_DRIVER;
44 extern MOUSE_DRIVER *MOUSE_Driver;
46 #define WINE_MOUSEEVENT_MAGIC ( ('M'<<24)|('A'<<16)|('U'<<8)|'S' )
47 typedef struct _WINE_MOUSEEVENT
49 DWORD magic;
50 DWORD keyState;
51 DWORD time;
52 HWND hWnd;
54 } WINE_MOUSEEVENT;
56 extern void MOUSE_SendEvent( DWORD mouseStatus, DWORD posX, DWORD posY,
57 DWORD keyState, DWORD time, HWND hWnd );
59 /***********************************
60 * MouseWheel support (defines)
63 #define MSH_MOUSEWHEEL "MSWHEEL_ROLLMSG"
65 #define WHEEL_DELTA 120
67 #ifndef WM_MOUSEWHEEL
68 #define WM_MOUSEWHEEL (WM_MOUSELAST+1)
69 #endif
71 #define MOUSEZ_CLASSNAME "MouseZ"
72 #define MOUSEZ_TITLE "Magellan MSWHEEL"
74 #define MSH_WHEELMODULE_CLASS (MOUSEZ_CLASSNAME)
75 #define MSH_WHEELMODULE_TITLE (MOUSEZ_TITLE)
77 #define MSH_WHEELSUPPORT "MSH_WHEELSUPPORT_MSG"
79 #define MSH_SCROLL_LINES "MSH_SCROLL_LINES_MSG"
81 #ifndef WHEEL_PAGESCROLL
82 #define WHEEL_PAGESCROLL (UINT_MAX)
83 #endif
85 #ifndef SPI_SETWHEELSCROLLLINES
86 #define SPI_SETWHEELSCROLLLINES 105
87 #endif
90 /* MouseWheel support
91 ***********************************/
93 #endif /* __WINE_MOUSE_H */