|
|
1.1 root 1: /*
2: * make the current screen look like "win" over the area covered by
3: * win.
4: *
5: * 7/9/81 (Berkeley) @(#)refresh.c 1.6
6: */
7:
8: /* @(#) doupdate.c: 1.1 10/15/83 (1.14 3/6/83) */
9: #include "curses.ext"
10:
11: extern WINDOW *lwin;
12:
13: /* Update screen */
14: doupdate()
15: {
16: int rc;
17: extern int _endwin;
18: int _outch();
19:
20: #ifdef DEBUG
21: if(outf) fprintf( outf, "doupdate()\n" );
22: #endif DEBUG
23:
24: if( lwin == NULL )
25: {
26: return ERR;
27: }
28:
29: if( _endwin )
30: {
31: /*
32: * We've called endwin since last refresh. Undo the
33: * effects of this call.
34: */
35:
36: _fixdelay(FALSE, SP->fl_nodelay);
37: if (stdscr->_use_meta)
38: tputs(meta_on, 1, _outch);
39: _endwin = FALSE;
40: SP->doclear = TRUE;
41: reset_prog_mode();
42: }
43:
44: /* Tell the back end where to leave the cursor */
45: if( lwin->_leave || lwin->_flags&_ISPAD )
46: {
47: #ifdef DEBUG
48: if(outf) fprintf( outf, "'_ll_move(-1, -1)' being done.\n" );
49: #endif DEBUG
50: _ll_move(-1, -1);
51: }
52: else
53: {
54: #ifdef DEBUG
55: if(outf) fprintf( outf, "'lwin->_cury+lwin->_begy, lwin->_curx+lwin->_begx' being done.\n" );
56: #endif DEBUG
57: _ll_move( lwin->_cury+lwin->_begy, lwin->_curx+lwin->_begx );
58: }
59: #ifdef DEBUG
60: if(outf) fprintf( outf, "doing 'rc = _ll_refresh(lwin->_use_idl)'.\n" );
61: #endif DEBUG
62: rc = _ll_refresh(lwin->_use_idl);
63: #ifdef DEBUG
64: _dumpwin(lwin);
65: #endif DEBUG
66: return rc;
67: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.