6 /* GPM mouse support include file */
11 /* Equivalent definitions for non-GPM mouse support */
12 /* These lines are modified version from the lines appearing in the */
13 /* gpm.h include file of the Linux General Purpose Mouse server */
16 #define GPM_B_MIDDLE 2
19 /* Xterm mouse support supports only GPM_DOWN and GPM_UP */
20 /* If you use others make sure your code also works without them */
23 GPM_DRAG
=2, /* exactly one in four is active at a time */
27 #define GPM_BARE_EVENTS(ev) ((ev)&0xF)
29 GPM_SINGLE
=16, /* at most one in three is set */
33 GPM_MFLAG
=128, /* motion during click? */
34 GPM_HARD
=256 /* if set in the defaultMask, force an already
35 used event to pass over to another handler */
38 typedef struct Gpm_Event
{
47 /* General mouse support definitions */
49 typedef int (*mouse_h
)(Gpm_Event
*, void *);
55 void init_mouse (void);
56 void shut_mouse (void);
58 /* Type of mouse: NO_MOUSE, GPM_MOUSE or XTERM_MOUSE */
59 extern int use_mouse_p
;
60 /* If use_mouse_p is XTERM_MOUSE: is mouse currently active? */
61 extern int xmouse_flag
;
63 int mouse_handler (Gpm_Event
*gpm_event
);
64 int redo_mouse (Gpm_Event
*event
);
66 /* Constants returned from mouse handlers */
68 #define MOU_NORMAL 0x00
69 #define MOU_REPEAT 0x01
70 #define MOU_ENDLOOP 0x02
74 #define DEBUGM(data) fprintf data
81 /* GPM specific mouse support definitions */
82 void show_mouse_pointer (int x
, int y
);
86 /* Mouse support definitions for non-GPM mouse */
87 #define show_mouse_pointer(a,b)
91 #endif /* MC_MOUSE_H */