2 * MOUSE driver interface
4 * Copyright 1998 Ulrich Weigand
12 struct tagCURSORICONINFO
;
15 typedef struct _MOUSEINFO
26 } MOUSEINFO
, *LPMOUSEINFO
;
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
);
37 typedef struct tagMOUSE_DRIVER
{
39 VOID (*pSetCursor
)(struct tagCURSORICONINFO
*);
40 VOID (*pMoveCursor
)(WORD
, WORD
);
41 BOOL (*pEnableWarpPointer
)(BOOL
);
44 extern MOUSE_DRIVER
*MOUSE_Driver
;
46 #define WINE_MOUSEEVENT_MAGIC ( ('M'<<24)|('A'<<16)|('U'<<8)|'S' )
47 typedef struct _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
68 #define WM_MOUSEWHEEL (WM_MOUSELAST+1)
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)
85 #ifndef SPI_SETWHEELSCROLLLINES
86 #define SPI_SETWHEELSCROLLLINES 105
91 ***********************************/
93 #endif /* __WINE_MOUSE_H */