Small fixes.
[wine] / include / mouse.h
1 /*
2  * MOUSE driver interface
3  *
4  * Copyright 1998 Ulrich Weigand
5  */
6
7 #ifndef __WINE_MOUSE_H
8 #define __WINE_MOUSE_H
9
10 #include "windef.h"
11
12 struct tagCURSORICONINFO;
13
14 #include "pshpack1.h"
15 typedef struct _MOUSEINFO
16 {
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"
28
29 typedef VOID (CALLBACK *LPMOUSE_EVENT_PROC)(DWORD,DWORD,DWORD,DWORD,DWORD);
30
31 WORD WINAPI MOUSE_Inquire(LPMOUSEINFO lpMouseInfo);
32 VOID WINAPI MOUSE_Enable(LPMOUSE_EVENT_PROC lpMouseEventProc);
33 VOID WINAPI MOUSE_Disable(VOID);
34
35 /* Wine internals */
36
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;
43
44 extern MOUSE_DRIVER *MOUSE_Driver;
45
46 #define WINE_MOUSEEVENT_MAGIC  ( ('M'<<24)|('A'<<16)|('U'<<8)|'S' )
47 typedef struct _WINE_MOUSEEVENT
48 {
49     DWORD magic;
50     DWORD keyState;
51     DWORD time;
52     HWND hWnd;
53
54 } WINE_MOUSEEVENT;
55
56 extern void MOUSE_SendEvent( DWORD mouseStatus, DWORD posX, DWORD posY,
57                              DWORD keyState, DWORD time, HWND hWnd );
58
59 /***********************************
60  *      MouseWheel support (defines)
61  */
62
63 #define MSH_MOUSEWHEEL "MSWHEEL_ROLLMSG"
64
65 #define WHEEL_DELTA      120
66
67 #ifndef WM_MOUSEWHEEL
68 #define WM_MOUSEWHEEL (WM_MOUSELAST+1)
69 #endif
70
71 #define MOUSEZ_CLASSNAME  "MouseZ"          
72 #define MOUSEZ_TITLE      "Magellan MSWHEEL"
73
74 #define MSH_WHEELMODULE_CLASS (MOUSEZ_CLASSNAME)
75 #define MSH_WHEELMODULE_TITLE (MOUSEZ_TITLE)
76
77 #define MSH_WHEELSUPPORT "MSH_WHEELSUPPORT_MSG"
78
79 #define MSH_SCROLL_LINES "MSH_SCROLL_LINES_MSG"
80
81 #ifndef  WHEEL_PAGESCROLL  
82 #define WHEEL_PAGESCROLL  (UINT_MAX)
83 #endif 
84
85 #ifndef SPI_SETWHEELSCROLLLINES
86 #define SPI_SETWHEELSCROLLLINES   105
87 #endif
88
89
90 /*      MouseWheel support
91 ***********************************/
92
93 #endif /* __WINE_MOUSE_H */
94