Lines Matching defs:win

61 render_char(WINDOW *win, cchar_t ch)
64 attr_t a = WINDOW_ATTRS(win);
71 ch = win->_nc_bkgd;
72 SetAttr(ch, a | AttrOf(win->_nc_bkgd));
73 if ((pair = GET_WINDOW_PAIR(win)) == 0)
74 pair = GetPair(win->_nc_bkgd);
78 a |= AttrOf(win->_nc_bkgd) & COLOR_MASK(a);
81 if ((pair = GET_WINDOW_PAIR(win)) == 0)
82 pair = GetPair(win->_nc_bkgd);
90 _tracech_t2(1, CHREF(win->_nc_bkgd)),
91 GetPair(win->_nc_bkgd),
92 _traceattr(WINDOW_ATTRS(win)),
93 GET_WINDOW_PAIR(win),
102 #define CHECK_POSITION(win, x, y) \
103 if (y > win->_maxy \
104 || x > win->_maxx \
108 "(_maxx = %d, _maxy = %d)", win, x, y, \
109 win->_maxx, win->_maxy)); \
113 #define CHECK_POSITION(win, x, y) /* nothing */
117 newline_forces_scroll(WINDOW *win, NCURSES_SIZE_T * ypos)
121 if (*ypos >= win->_regtop && *ypos == win->_regbottom) {
122 *ypos = win->_regbottom;
140 wrap_to_next_line(WINDOW *win)
142 win->_flags |= _WRAPPED;
143 if (newline_forces_scroll(win, &(win->_cury))) {
144 win->_curx = win->_maxx;
145 if (!win->_scroll)
147 scroll(win);
149 win->_curx = 0;
159 fill_cells(WINDOW *win, int count)
162 int save_x = win->_curx;
163 int save_y = win->_cury;
166 if (wadd_wch_literal(win, blank) == ERR)
169 win->_curx = (NCURSES_SIZE_T) save_x;
170 win->_cury = (NCURSES_SIZE_T) save_y;
174 wadd_wch_literal(WINDOW *win, cchar_t ch)
180 x = win->_curx;
181 y = win->_cury;
183 CHECK_POSITION(win, x, y);
185 ch = render_char(win, ch);
187 line = win->_line + y;
205 || (win->_maxx >= 0 && win->_cury >= 1)) {
207 chars = (win->_line[y].text[x - 1].chars);
209 chars = (win->_line[y - 1].text[win->_maxx].chars);
227 if (len > win->_maxx + 1) {
230 } else if (x + len > win->_maxx + 1) {
231 int count = win->_maxx + 1 - x;
233 fill_cells(win, count);
234 if (wrap_to_next_line(win) == ERR)
236 x = win->_curx;
237 y = win->_cury;
238 line = win->_line + y;
248 if (isWidecBase(win->_line[y].text[x + i])) {
250 } else if (isWidecExt(win->_line[y].text[x + i])) {
251 for (j = i; x + j <= win->_maxx; ++j) {
252 if (!isWidecExt(win->_line[y].text[x + j])) {
254 fill_cells(win, j);
269 win->_begy + y, win->_begx + x));
288 (long) win->_cury, (long) win->_curx, x - 1,
291 if (x > win->_maxx) {
292 return wrap_to_next_line(win);
294 win->_curx = (NCURSES_SIZE_T) x;
299 wadd_wch_nosync(WINDOW *win, cchar_t ch)
306 SCREEN *sp = _nc_screen_of(win);
316 return wadd_wch_literal(win, ch);
322 x = win->_curx;
323 y = win->_cury;
337 if ((!win->_scroll && (y == win->_regbottom))
338 || (x <= win->_maxx)) {
341 while (win->_curx < x) {
342 if (wadd_wch_literal(win, blank) == ERR)
347 wclrtoeol(win);
348 win->_flags |= _WRAPPED;
349 if (newline_forces_scroll(win, &y)) {
350 x = win->_maxx;
351 if (win->_scroll) {
352 scroll(win);
361 wclrtoeol(win);
362 if (newline_forces_scroll(win, &y)) {
363 if (win->_scroll)
364 scroll(win);
371 win->_flags &= ~_WRAPPED;
377 win->_flags &= ~_WRAPPED;
385 if (wadd_wch_literal(win, sch) == ERR)
393 win->_curx = x;
394 win->_cury = y;
408 wadd_wch(WINDOW *win, const cchar_t *wch)
413 (void *) win,
416 if (win && (wadd_wch_nosync(win, *wch) != ERR)) {
417 _nc_synchook(win);
426 wecho_wchar(WINDOW *win, const cchar_t *wch)
431 (void *) win,
434 if (win && (wadd_wch_nosync(win, *wch) != ERR)) {
435 bool save_immed = win->_immed;
436 win->_immed = TRUE;
437 _nc_synchook(win);
438 win->_immed = save_immed;