|
|
1.1 root 1: /***************************************************************************
2: * This program is Copyright (C) 1986, 1987, 1988 by Jonathan Payne. JOVE *
3: * is provided to you without charge, and with no warranty. You may give *
4: * away copies of JOVE, including sources, provided that this notice is *
5: * included in all the files. *
6: ***************************************************************************/
7:
8: struct window {
9: Window *w_prev, /* circular list */
10: *w_next;
11: Buffer *w_bufp; /* buffer associated with this window */
12: Line *w_top, /* top line */
13: *w_line; /* current line */
14: int w_char,
15: w_height, /* window height */
16: w_topnum, /* line number of the topline */
17: w_dotcol, /* UpdWindow sets this ... */
18: w_dotline, /* ... and this */
19: w_flags,
20: #define W_TOPGONE 01
21: #define W_CURGONE 02 /* topline (curline) of window has been deleted
22: since the last time a redisplay was called */
23: #define W_VISSPACE 04
24: #define W_NUMLINES 010
25: w_LRscroll; /* amount of LeftRight scrolling in window */
26: #ifdef MAC
27: int w_topline; /* row number of top line in window */
28: char **w_control; /* scroll bar for window */
29: #endif
30: };
31:
32: extern Window *fwind, /* first window in list */
33: *curwind; /* current window */
34:
35: #define one_windp() (fwind->w_next == fwind)
36: #define HALF(wp) (((wp)->w_height - 1) / 2)
37: #define SIZE(wp) ((wp)->w_height - 1)
38:
39: extern int
40: FLine proto((struct window *w)),
41: in_window proto((struct window *windes,struct line *line));
42:
43: extern Window
44: *div_wind proto((struct window *wp,int n)),
45: *w_nam_typ proto((char *name,int type)),
46: *windbp proto((struct buffer *bp));
47:
48: extern void
49: CalcWind proto((struct window *w)),
50: CentWind proto((struct window *w)),
51: SetTop proto((struct window *w,struct line *line)),
52: SetWind proto((struct window *new)),
53: WindSize proto((struct window *w,int inc)),
54: del_wind proto((struct window *wp)),
55: pop_wind proto((char *name,int clobber,int btype)),
56: tiewind proto((struct window *w,struct buffer *bp)),
57: winit proto((void));
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.