xref: /plan9/acme/bin/source/adict/win.h (revision 9a747e4fd48b9f4522c70c07e8f882a15030f964)
1 enum
2 {
3 	False,
4 	True,
5 	EVENTSIZE=256,
6 };
7 
8 
9 typedef struct Event Event;
10 struct Event
11 {
12 	int	c1;
13 	int	c2;
14 	int	q0;
15 	int	q1;
16 	int	flag;
17 	int	nb;
18 	int	nr;
19 	char	b[EVENTSIZE*UTFmax+1];
20 	Rune	r[EVENTSIZE+1];
21 };
22 
23 
24 typedef struct Win Win;
25 struct Win
26 {
27 	int	winid;
28 	int	addr;
29 	Biobuf *body;
30 	int	ctl;
31 	int	data;
32 	int	event;
33 	char	buf[512];
34 	char	*bufp;
35 	int	nbuf;
36 };
37 
38 int     dead(Win*);
39 void	wnew(Win*);
40 void	wwritebody(Win*, char *s, int n);
41 void	wread(Win*, uint, uint, char*);
42 void	wclean(Win*);
43 void	wname(Win*, char*);
44 void	wdormant(Win*);
45 void	wevent(Win*, Event*);
46 void	wtagwrite(Win*, char*, int);
47 void	wwriteevent(Win*, Event*);
48 void	wslave(Win*, Channel*);	/* chan(Event) */
49 void	wreplace(Win*, char*, char*, int);
50 void	wselect(Win*, char*);
51 int	wdel(Win*);
52 int	wreadall(Win*, char**);
53 
54 void	ctlwrite(Win*, char*);
55 int	getec(Win*);
56 int	geten(Win*);
57 int	geter(Win*, char*, int*);
58 int	openfile(Win*, char*);
59 void	openbody(Win*, int);
60