|
|
1.1 ! root 1: ! 2: Subject: 386 curses ! 3: ! 4: 386 curses gives the window structure as follows. ! 5: ! 6: This is new code and will contain some bugs. ! 7: ! 8: typedef unsigned short chtype; ! 9: ! 10: struct _win_st { ! 11: short _cury, _curx; ! 12: short _maxy, _maxx; ! 13: short _begy, _begx; ! 14: short _flags; ! 15: chtype _attrs; ! 16: bool _clear; ! 17: bool _leave; ! 18: bool _scroll; ! 19: bool _idlok; ! 20: bool _use_keypad; /* 0=no, 1=yes, 2=yes/timeout */ ! 21: bool _use_meta; /* T=use the meta key */ ! 22: bool _nodelay; /* T=don't wait for tty input */ ! 23: chtype **_line; ! 24: short *_firstchar; /* First changed character in the line */ ! 25: short *_lastchar; /* Last changed character in the line */ ! 26: short *_numchngd; /* Number of changes made in the line */ ! 27: short _regtop; /* Top and bottom of scrolling region */ ! 28: short _regbottom; ! 29: }; ! 30: ! 31: ! 32: Note for the mvwin() function. Only use this for newwin() windows not ! 33: subwin() windows as the latter point to the parent window. Moving a ! 34: window does not erase the previous copy, to do this touchwin() and ! 35: refresh() the underlaying window. Note that touchwin() refresh() is ! 36: likely to erase other overlaying windows which must be touchwin()ed and ! 37: refresh()ed. ! 38: ! 39: If you are going to be doing much of this it is best to keep a tree ! 40: showing display structure. When a window is moved, touchwin and refresh ! 41: the window under the old location. When a window is touchwin() and ! 42: refresh()ed, touchwin() and refresh() any windows over it.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.