xref: /plan9-contrib/sys/src/9/bcm/screen.h (revision 5c47fe09a0cc86dfb02c0ea4a2b6aec7eda2361f)
1 typedef struct Cursor Cursor;
2 typedef struct Cursorinfo Cursorinfo;
3 typedef struct Lcd Lcd;
4 
5 struct Cursorinfo {
6 	Cursor;
7 	Lock;
8 };
9 
10 struct Lcd {
11 	void	(*draw)(Rectangle);
12 	void	(*blank)(int);
13 };
14 
15 /* devmouse.c */
16 extern void mousetrack(int, int, int, int);
17 extern Point mousexy(void);
18 
19 extern void mouseaccelerate(int);
20 extern int m3mouseputc(Queue*, int);
21 extern int m5mouseputc(Queue*, int);
22 extern int mouseputc(Queue*, int);
23 
24 extern Cursorinfo cursor;
25 extern Cursor arrow;
26 
27 /* mouse.c */
28 extern void mousectl(Cmdbuf*);
29 extern void mouseresize(void);
30 
31 /* screen.c */
32 extern void	blankscreen(int);
33 extern void	flushmemscreen(Rectangle);
34 extern uchar*	attachscreen(Rectangle*, ulong*, int*, int*, int*);
35 extern int	cursoron(int);
36 extern void	cursoroff(int);
37 extern void	setcursor(Cursor*);
38 
39 /* devdraw.c */
40 extern QLock	drawlock;
41 
42 #define ishwimage(i)	1		/* for ../port/devdraw.c */
43