|
|
1.1 root 1: /*
2: * Copyright (c) 1981 Regents of the University of California.
3: * All rights reserved.
4: *
5: * Redistribution and use in source and binary forms are permitted
6: * provided that the above copyright notice and this paragraph are
7: * duplicated in all such forms and that any documentation,
8: * advertising materials, and other materials related to such
9: * distribution and use acknowledge that the software was developed
10: * by the University of California, Berkeley. The name of the
11: * University may not be used to endorse or promote products derived
12: * from this software without specific prior written permission.
13: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16: */
17:
18: #ifndef COHERENT
19: #ifndef lint
20: static uchar sccsid[] = "@(#)clrtoeol.c 5.3 (Berkeley) 6/30/88";
21: #endif /* not lint */
22: #endif /* not COHERENT */
23:
24: # include "curses.ext"
25:
26: /*
27: * This routine clears up to the end of line
28: *
29: */
30: wclrtoeol(win)
31: reg WINDOW *win; {
32:
33: reg uchar *sp, *end;
34: reg int y, x;
35: reg uchar *maxx;
36: reg int minx;
37:
38: y = win->_cury;
39: x = win->_curx;
40: end = &win->_y[y][win->_maxx];
41: minx = _NOCHANGE;
42: maxx = &win->_y[y][x];
43: for (sp = maxx; sp < end; sp++)
44: if (*sp != ' ') {
45: maxx = sp;
46: if (minx == _NOCHANGE)
47: minx = sp - win->_y[y];
48: *sp = ' ';
49: }
50: /*
51: * update firstch and lastch for the line
52: */
53: touchline(win, y, win->_curx, win->_maxx - 1);
54: # ifdef DEBUG
55: fprintf(outf, "CLRTOEOL: minx = %d, maxx = %d, firstch = %d, lastch = %d\n", minx, maxx - win->_y[y], win->_firstch[y], win->_lastch[y]);
56: # endif
57: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.