Lines Matching refs:xw

87 		ScrollBarDrawThumb(xw, 1); \
90 static int handle_translated_exposure(XtermWidget xw,
95 static void ClearLeft(XtermWidget xw);
96 static void CopyWait(XtermWidget xw);
97 static void horizontal_copy_area(XtermWidget xw,
101 static void vertical_copy_area(XtermWidget xw,
184 FlushScroll(XtermWidget xw)
186 TScreen *screen = TScreenOf(xw);
194 int left = ScrnLeftMargin(xw);
195 int right = ScrnRightMargin(xw);
199 HideCursor(xw);
274 vertical_copy_area(xw,
285 ClearCurBackground(xw,
291 ScrnRefresh(xw,
298 xtermTimedDbe(xw);
308 AddToRefresh(XtermWidget xw)
310 TScreen *screen = TScreenOf(xw);
343 FlushScroll(xw);
354 AddToVisible(XtermWidget xw)
356 TScreen *screen = TScreenOf(xw);
360 if (!AddToRefresh(xw)) {
374 adjustHiliteOnFwdScroll(XtermWidget xw, int amount, Bool all_lines)
376 TScreen *screen = TScreenOf(xw);
381 int left = ScrnLeftMargin(xw);
382 int right = ScrnRightMargin(xw);
406 ScrnDisownSelection(xw);
427 ScrnDisownSelection(xw);
431 ScrnDisownSelection(xw);
434 ScrnDisownSelection(xw);
449 adjustHiliteOnBakScroll(XtermWidget xw, int amount)
451 TScreen *screen = TScreenOf(xw);
486 ScrnDisownSelection(xw);
489 ScrnDisownSelection(xw);
491 ScrnDisownSelection(xw);
506 scrollInMargins(XtermWidget xw, int amount, int top)
508 TScreen *screen = TScreenOf(xw);
512 int left = ScrnLeftMargin(xw);
513 int right = ScrnRightMargin(xw);
546 ClearCells(xw, 0, (unsigned) length, row, left);
557 ClearCells(xw, 0, (unsigned) length, row, left);
570 ScrnUpdate2(XtermWidget xw,
577 if_OPT_WIDE_CHARS(TScreenOf(xw), {
578 if (leftcol + ncols <= TScreenOf(xw)->max_col)
585 ScrnUpdate(xw, toprow, leftcol, nrows, ncols, force);
588 #define ScrnUpdate2(xw, toprow, leftcol, nrows, ncols, force) \
589 ScrnUpdate(xw, toprow, leftcol, nrows, ncols, force)
599 xtermScroll(XtermWidget xw, int amount)
601 TScreen *screen = TScreenOf(xw);
606 int left = ScrnLeftMargin(xw);
607 int right = ScrnRightMargin(xw);
620 HideCursor(xw);
646 adjustHiliteOnFwdScroll(xw, amount, scroll_all_lines);
652 FlushScroll(xw);
659 FlushScroll(xw);
673 ClearScreen(xw);
706 CopyWait(xw);
710 vertical_copy_area(xw,
718 ClearCurBackground(xw,
732 scrollInMargins(xw, amount, screen->top_marg);
733 ScrnUpdate2(xw,
740 ScrnDeleteLine(xw,
746 ScrnDeleteLine(xw,
754 scroll_displayed_graphics(xw, amount);
757 ScrnRefresh(xw,
777 xtermScrollLR(XtermWidget xw, int amount, Bool toLeft)
780 xtermColScroll(xw, amount, toLeft, ScrnLeftMargin(xw));
788 xtermColIndex(XtermWidget xw, Bool toLeft)
790 TScreen *screen = TScreenOf(xw);
794 if (screen->cur_col == ScrnLeftMargin(xw)) {
795 xtermColScroll(xw, 1, False, screen->cur_col);
797 CursorBack(xw, 1);
800 CursorBack(xw, 1);
804 if (screen->cur_col == ScrnRightMargin(xw)) {
805 xtermColScroll(xw, 1, True, ScrnLeftMargin(xw));
807 CursorForward(xw, 1);
810 CursorForward(xw, 1);
819 xtermColScroll(XtermWidget xw, int amount, Bool toLeft, int at_col)
821 TScreen *screen = TScreenOf(xw);
847 ScrnDeleteChar(xw, (unsigned) amount);
852 ScrnInsertChar(xw, (unsigned) amount);
857 xtermRepaint(xw);
869 RevScroll(XtermWidget xw, int amount)
871 TScreen *screen = TScreenOf(xw);
873 int left = ScrnLeftMargin(xw);
874 int right = ScrnRightMargin(xw);
883 HideCursor(xw);
889 adjustHiliteOnBakScroll(xw, amount);
896 FlushScroll(xw);
901 FlushScroll(xw);
923 CopyWait(xw);
927 vertical_copy_area(xw,
935 ClearCurBackground(xw,
945 scrollInMargins(xw, -amount, screen->top_marg);
946 ScrnUpdate2(xw,
953 ScrnInsertLine(xw,
989 setZIconBeep(XtermWidget xw)
991 TScreen *screen = TScreenOf(xw);
999 ChangeIconName(xw, icon_name);
1001 xtermBell(xw, XkbBI_Info, 0);
1010 showZIconBeep(XtermWidget xw, const char *name)
1017 if (resource.zIconBeep && TScreenOf(xw)->zIconBeep_flagged) {
1037 ChangeGroup(xw, XtNiconName, newname);
1049 resetZIconBeep(XtermWidget xw)
1051 TScreen *screen = TScreenOf(xw);
1085 ChangeIconName(xw, buf);
1092 #define setZIconBeep(xw) /* nothing */
1100 WriteText(XtermWidget xw, Cardinal offset, Cardinal length)
1102 IChar *str = xw->work.write_text + offset;
1103 TScreen *screen = TScreenOf(xw);
1106 unsigned attr_flags = xw->flags;
1107 CellColor fg_bg = xtermColorPair(xw);
1124 ScrnDisownSelection(xw);
1142 InsertChar(xw, cells);
1145 if (AddToVisible(xw)
1150 HideCursor(xw);
1160 ClearInLine(xw, screen->cur_row, kl, (unsigned) (kr - kl + 1));
1173 fg = MapToColorMode(xw->cur_foreground, screen, attr_flags);
1175 fg = xw->cur_foreground;
1182 currentGC = updatedXtermGC(xw, attr_flags, fg_bg, False);
1185 params.xw = xw;
1198 resetXtermGC(xw, attr_flags, False);
1201 ScrnWriteText(xw, offset, length, attr_flags, fg_bg);
1202 CursorForward(xw, (int) cells);
1205 setZIconBeep(xw);
1216 InsertLine(XtermWidget xw, int n)
1218 TScreen *screen = TScreenOf(xw);
1220 int left = ScrnLeftMargin(xw);
1221 int right = ScrnRightMargin(xw);
1231 set_cur_col(screen, ScrnLeftMargin(xw));
1233 HideCursor(xw);
1242 ScrnDisownSelection(xw);
1252 FlushScroll(xw);
1257 FlushScroll(xw);
1273 vertical_copy_area(xw, scrolltop - n, scrollheight, -n, left, right);
1275 ClearCurBackground(xw,
1285 ScrnInsertLine(xw,
1291 scrollInMargins(xw, -n, screen->cur_row);
1292 ScrnUpdate2(xw,
1307 DeleteLine(XtermWidget xw, int n, Bool canSave)
1309 TScreen *screen = TScreenOf(xw);
1311 int left = ScrnLeftMargin(xw);
1312 int right = ScrnRightMargin(xw);
1324 set_cur_col(screen, ScrnLeftMargin(xw));
1326 HideCursor(xw);
1335 ScrnDisownSelection(xw);
1342 FlushScroll(xw);
1349 FlushScroll(xw);
1356 scrollInMargins(xw, n, screen->cur_row);
1358 ScrnDeleteLine(xw,
1364 ScrnDeleteLine(xw,
1374 ScrnUpdate2(xw,
1405 vertical_copy_area(xw, scrolltop + n, scrollheight, n, left, right);
1410 ScrnUpdate(xw, refreshtop, 0, rows, MaxCols(screen), True);
1415 ClearCurBackground(xw,
1429 InsertChar(XtermWidget xw, unsigned n)
1431 TScreen *screen = TScreenOf(xw);
1435 int left = ScrnLeftMargin(xw);
1436 int right = ScrnRightMargin(xw);
1439 HideCursor(xw);
1445 ScrnDisownSelection(xw);
1456 } else if (AddToVisible(xw)
1469 ClearInLine(xw, screen->cur_row, kl, (unsigned) (kr - kl + 1));
1475 ClearInLine(xw, screen->cur_row, kl, (unsigned) (kr - kl + 1));
1490 horizontal_copy_area(xw, screen->cur_col,
1495 ClearCurBackground(xw,
1504 ScrnInsertChar(xw, n);
1512 DeleteChar(XtermWidget xw, unsigned n)
1514 TScreen *screen = TScreenOf(xw);
1518 int right = ScrnRightMargin(xw);
1521 HideCursor(xw);
1530 ScrnDisownSelection(xw);
1539 if (AddToVisible(xw)
1551 ClearInLine(xw, screen->cur_row, kl, (unsigned) (kr - kl + 1));
1559 horizontal_copy_area(xw,
1564 ClearCurBackground(xw,
1573 ScrnDeleteChar(xw, n);
1581 ClearAbove(XtermWidget xw)
1583 TScreen *screen = TScreenOf(xw);
1591 ClearInLine(xw, row, 0, len);
1592 ClearInLine(xw, screen->cur_row, 0, (unsigned) screen->cur_col);
1597 HideCursor(xw);
1602 FlushScroll(xw);
1612 ClearCurBackground(xw,
1620 ClearBufRows(xw, 0, screen->cur_row - 1);
1623 ClearLeft(xw);
1630 ClearBelow(XtermWidget xw)
1632 TScreen *screen = TScreenOf(xw);
1634 ClearRight(xw, -1);
1642 ClearInLine(xw, row, 0, len);
1648 FlushScroll(xw);
1655 ClearCurBackground(xw,
1663 ClearBufRows(xw, screen->cur_row + 1, screen->max_row);
1672 ClearInLine2(XtermWidget xw, int flags, int row, int col, unsigned len)
1674 TScreen *screen = TScreenOf(xw);
1685 ScrnDisownSelection(xw);
1710 ClearInLine(xw, row, col, n);
1736 HideCursor(xw);
1739 if (AddToVisible(xw)
1742 ClearCurBackground(xw,
1751 ClearCells(xw, flags, len, row, col);
1758 ClearInLine(XtermWidget xw, int row, int col, unsigned len)
1760 TScreen *screen = TScreenOf(xw);
1772 return ClearInLine2(xw, flags, row, col, len);
1780 ClearRight(XtermWidget xw, int n)
1782 TScreen *screen = TScreenOf(xw);
1798 if (AddToVisible(xw)) {
1807 ClearInLine2(xw, 0, row, kl, (unsigned) (xx - kl));
1811 ClearInLine2(xw, 0, row, xx + 1, (unsigned) (kr - xx));
1815 (void) ClearInLine(xw, screen->cur_row, screen->cur_col, len);
1817 ScrnClearCells(xw, screen->cur_row, screen->cur_col, len);
1822 ShowWrapMarks(xw, screen->cur_row, ld);
1830 ClearLeft(XtermWidget xw)
1832 TScreen *screen = TScreenOf(xw);
1836 if (AddToVisible(xw)) {
1842 ClearInLine2(xw, 0, row, kl, (unsigned) (kr - kl + 1));
1845 (void) ClearInLine(xw, screen->cur_row, 0, len);
1847 ScrnClearCells(xw, screen->cur_row, 0, len);
1855 ClearLine(XtermWidget xw)
1857 TScreen *screen = TScreenOf(xw);
1861 (void) ClearInLine(xw, screen->cur_row, 0, len);
1865 ClearScreen(XtermWidget xw)
1867 TScreen *screen = TScreenOf(xw);
1873 HideCursor(xw);
1875 ScrnDisownSelection(xw);
1879 FlushScroll(xw);
1885 ClearCurBackground(xw,
1892 ClearBufRows(xw, 0, screen->max_row);
1901 do_erase_char(XtermWidget xw, int param, int mode)
1903 TScreen *screen = TScreenOf(xw);
1911 ClearRight(xw, param);
1916 do_erase_line(XtermWidget xw, int param, int mode)
1918 TScreen *screen = TScreenOf(xw);
1929 ClearRight(xw, -1);
1932 ClearLeft(xw);
1935 ClearLine(xw);
1948 do_erase_display(XtermWidget xw, int param, int mode)
1950 TScreen *screen = TScreenOf(xw);
1963 do_erase_display(xw, 2, mode);
1966 ClearBelow(xw);
1973 do_erase_display(xw, 2, mode);
1976 ClearAbove(xw);
1993 rc &= ClearInLine(xw, row, 0, len);
1997 ClearScreen(xw);
2005 ScrollBarDrawThumb(xw, 1);
2032 screen_has_data(XtermWidget xw)
2034 TScreen *screen = TScreenOf(xw);
2048 do_extra_scroll(XtermWidget xw, Bool trimmed)
2050 TScreen *screen = TScreenOf(xw);
2052 if (screen_has_data(xw)) {
2072 xtermScroll(xw, screen->max_row);
2073 FlushScroll(xw);
2075 xtermRepaint(xw);
2087 do_cd_xtra_scroll(XtermWidget xw, int param)
2089 TScreen *screen = TScreenOf(xw);
2094 ScrnTopMargin(xw),
2095 ScrnLeftMargin(xw)));
2096 if (xw->misc.cdXtraScroll
2099 && screen->cur_col <= ScrnLeftMargin(xw)
2100 && screen->cur_row <= ScrnTopMargin(xw)))) {
2101 do_extra_scroll(xw, (xw->misc.cdXtraScroll == edTrim));
2110 do_ti_xtra_scroll(XtermWidget xw)
2112 if (xw->misc.tiXtraScroll) {
2113 do_extra_scroll(xw, False);
2118 CopyWait(XtermWidget xw)
2120 TScreen *screen = TScreenOf(xw);
2134 if (xw->work.active_icon != eiFalse) {
2159 HandleExposure(xw, &reply);
2169 HandleExposure(xw, &reply);
2190 copy_area(XtermWidget xw,
2198 TScreen *screen = TScreenOf(xw);
2204 CopyWait(xw);
2217 NormalGC(xw, screen),
2226 horizontal_copy_area(XtermWidget xw,
2231 TScreen *screen = TScreenOf(xw);
2238 copy_area(xw, src_x, src_y,
2249 vertical_copy_area(XtermWidget xw,
2256 TScreen *screen = TScreenOf(xw);
2269 copy_area(xw, src_x, src_y, w, h, dst_x, dst_y);
2281 ShowWrapMarks(xw, row, ld);
2292 scrolling_copy_area(XtermWidget xw,
2299 vertical_copy_area(xw, firstline, nlines, amount, 0, TScreenOf(xw)->max_col);
2308 HandleExposure(XtermWidget xw, XEvent *event)
2310 TScreen *screen = TScreenOf(xw);
2330 return handle_translated_exposure(xw, reply->x, reply->y,
2348 (xw, reply->x + screen->copy_dest_x - screen->copy_src_x,
2356 value = handle_translated_exposure(xw, reply->x, reply->y,
2364 set_background(XtermWidget xw, int color)
2366 TScreen *screen = TScreenOf(xw);
2367 Pixel c = getXtermBG(xw, xw->flags, color);
2371 ((xw->flags & ATR_DIRECT_BG)
2377 XSetWindowBackground(screen->display, VShellWindow(xw), c);
2379 initBorderGC(xw, WhichVWin(screen));
2383 xtermClear2(XtermWidget xw, int x, int y, unsigned width, unsigned height)
2385 TScreen *screen = TScreenOf(xw);
2401 xtermClear2(xw, x, vmark1, width, (unsigned) (yy - vmark1));
2421 FillerGC(xw, screen),
2435 xtermClear2(xw, xb, vmark2, width, (unsigned) (yy - vmark2));
2443 gc = FillerGC(xw, screen);
2460 handle_translated_exposure(XtermWidget xw,
2466 TScreen *screen = TScreenOf(xw);
2485 set_background(xw, -1);
2486 xtermClear2(xw,
2513 ScrnRefresh(xw, toprow, leftcol, nrows, ncols, True);
2530 GetColors(XtermWidget xw, ScrnColors * pColors)
2532 TScreen *screen = TScreenOf(xw);
2542 AssignFgColor(XtermWidget xw, Pixel fg)
2545 TScreen *screen = TScreenOf(xw);
2551 setCgsFore(xw, win, gcNorm, fg);
2552 setCgsBack(xw, win, gcNormReverse, fg);
2553 setCgsFore(xw, win, gcBold, fg);
2554 setCgsBack(xw, win, gcBoldReverse, fg);
2557 FreeMarkGCs(xw);
2563 AssignBgColor(XtermWidget xw, Pixel bg)
2566 TScreen *screen = TScreenOf(xw);
2572 setCgsBack(xw, win, gcNorm, bg);
2573 setCgsFore(xw, win, gcNormReverse, bg);
2574 setCgsBack(xw, win, gcBold, bg);
2575 setCgsFore(xw, win, gcBoldReverse, bg);
2576 set_background(xw, -1);
2584 ChangeColors(XtermWidget xw, ScrnColors * pNew)
2587 TScreen *screen = TScreenOf(xw);
2594 FreeMarkGCs(xw);
2604 FreeMarkGCs(xw);
2608 && AssignFgColor(xw, COLOR_VALUE(pNew, TEXT_FG))) {
2613 && AssignBgColor(xw, COLOR_VALUE(pNew, TEXT_BG))) {
2654 if (TEK4014_SHOWN(xw)) {
2672 if (set_cursor_gcs(xw) && screen->Vshow) {
2680 if (TEK4014_SHOWN(xw)) {
2688 xtermRepaint(xw);
2692 xtermClear(XtermWidget xw)
2694 TScreen *screen = TScreenOf(xw);
2697 xtermClear2(xw, 0, 0, FullWidth(screen), FullHeight(screen));
2701 xtermRepaint(XtermWidget xw)
2703 TScreen *screen = TScreenOf(xw);
2706 xtermClear(xw);
2707 ScrnRefresh(xw, 0, 0, LastRowNumber(screen) + 1, MaxCols(screen), True);
2778 reallySwapColors(XtermWidget xw, ToSwap * list, int count)
2785 redoCgs(xw, list[j].fg, list[j].bg, (CgsEnum) k);
2788 FreeMarkGCs(xw);
2792 swapVTwinGCs(XtermWidget xw, VTwin *win)
2794 swapCgs(xw, win, gcNorm, gcNormReverse);
2795 swapCgs(xw, win, gcBold, gcBoldReverse);
2799 ReverseVideo(XtermWidget xw)
2801 TScreen *screen = TScreenOf(xw);
2805 TRACE(("ReverseVideo now %s\n", BtoS(xw->misc.re_verse)));
2830 reallySwapColors(xw, listToSwap, numToSwap);
2832 swapVTwinGCs(xw, &(screen->fullVwin));
2834 swapVTwinGCs(xw, &(screen->iconVwin));
2837 xw->misc.re_verse = (Boolean) !xw->misc.re_verse;
2838 TRACE(("...swapping done, set ReverseVideo %s\n", BtoS(xw->misc.re_verse)));
2840 if (XtIsRealized((Widget) xw)) {
2841 xtermDisplayPointer(xw);
2844 if (TEK4014_SHOWN(xw)) {
2858 if (XtIsRealized((Widget) xw)) {
2859 set_background(xw, -1);
2862 TekReverseVideo(xw, tekWidget);
2864 if (XtIsRealized((Widget) xw)) {
2865 xtermRepaint(xw);
2868 if (TEK4014_SHOWN(xw)) {
2872 ReverseOldColors(xw);
2873 set_cursor_gcs(xw);
2875 TRACE(("...ReverseVideo now %s\n", BtoS(xw->misc.re_verse)));
2912 getXftColor(XtermWidget xw, Pixel pixel)
2922 (void) xw;
2949 (void) QueryOneColor(xw, &color);
2968 #define XtermCellWidth(xw, ch) \
2973 ? (TScreenOf(xw)->c1_printable ? 1 : 0) \
2975 : CharWidth(TScreenOf(xw), ch)))
2977 #define XtermCellWidth(xw, ch) \
2982 : CharWidth(TScreenOf(xw), ch)))
2987 #define XFT_DATA(which) getMyXftFont(params->xw, which, fontnum)
3003 TScreen *screen = TScreenOf(params->xw);
3052 TScreen *screen = TScreenOf(params->xw);
3131 TScreen *screen = TScreenOf(params->xw);
3158 charWidth = XtermCellWidth(params->xw, (wchar_t) wc);
3215 xtermNeedSwap(params->xw, 1);
3281 TScreen *screen = TScreenOf(params->xw);
3327 TScreen *screen = TScreenOf(params->xw);
3331 CgsEnum srcId = getCgsId(params->xw, currentWin, gc);
3333 Pixel fg = getCgsFore(params->xw, currentWin, gc);
3334 Pixel bg = getCgsBack(params->xw, currentWin, gc);
3390 setCgsFore(params->xw, currentWin, dstId, bg);
3391 setCgsBack(params->xw, currentWin, dstId, fg);
3394 getCgsGC(params->xw, currentWin, dstId),
3488 XtermWidget xw = params->xw;
3489 TScreen *screen = TScreenOf(xw);
3519 (int) (macro(screen) * (1.0 + (Max(20, xw->misc.field) / 100.)))
3615 drawUnderline(XtermWidget xw,
3624 TScreen *screen = TScreenOf(xw);
3672 TScreen *screen = TScreenOf(params->xw);
3675 XFontStruct *thisFp = getCgsFont(params->xw, cgsWin, gc)->fs;
3882 XtermWidget xw = params->xw;
3883 TScreen *screen = TScreenOf(xw);
3888 XTermFonts *xf = getCgsFont(xw, currentWin, gc);
3982 TScreen *screen = TScreenOf(recur.xw);
4022 if (UsingRenderFont(recur.xw)) {
4139 if (UsingRenderFont(recur.xw)) {
4193 #define GET_XFT_FG() getXftColor(recur.xw, values.foreground)
4194 #define GET_XFT_BG() getXftColor(recur.xw, values.background)
4196 values.foreground = getCgsFore(recur.xw, currentWin, gc);
4197 values.background = getCgsBack(recur.xw, currentWin, gc);
4242 || xtermXftMissing(recur.xw,
4266 if (!missing && xtermXftMissing(recur.xw,
4269 int found = findXftGlyph(recur.xw, currData, ch);
4278 if (!xtermXftMissing(recur.xw,
4305 if (xtermXftMissing(recur.xw,
4404 drawUnderline(recur.xw,
4487 || recur.xw->work.force_wideFont
4538 && TScreenOf(recur.xw)->force_box_chars) {
4576 && recur.xw->work.force_wideFont
4763 Pixel fg = getCgsFore(recur.xw, currentWin, gc);
4764 Pixel bg = getCgsBack(recur.xw, currentWin, gc);
4782 setCgsFore(recur.xw, currentWin, cgsId, fg);
4783 setCgsBack(recur.xw, currentWin, cgsId, bg);
4784 gc = getCgsGC(recur.xw, currentWin, cgsId);
4793 getCgsFont(recur.xw,
4883 drawUnderline(recur.xw,
4914 xtermSizeHints(XtermWidget xw, int scrollbarWidth)
4916 TScreen *screen = TScreenOf(xw);
4919 TRACE((" border %d\n", xw->core.border_width));
4922 xw->hints.base_width = 2 * screen->border + scrollbarWidth;
4923 xw->hints.base_height = 2 * screen->border;
4926 TRACE((" toolbar %d\n", ToolbarHeight(xw)));
4928 xw->hints.base_height += ToolbarHeight(xw);
4929 xw->hints.base_height += BorderWidth(xw) * 2;
4930 xw->hints.base_width += BorderWidth(xw) * 2;
4933 if (xw->misc.resizeByPixel) {
4934 xw->hints.width_inc = 1;
4935 xw->hints.height_inc = 1;
4937 xw->hints.width_inc = FontWidth(screen);
4938 xw->hints.height_inc = FontHeight(screen);
4940 xw->hints.min_width = xw->hints.base_width + xw->hints.width_inc;
4941 xw->hints.min_height = xw->hints.base_height + xw->hints.height_inc;
4943 xw->hints.width = MaxCols(screen) * FontWidth(screen) + xw->hints.min_width;
4944 xw->hints.height = MaxRows(screen) * FontHeight(screen) + xw->hints.min_height;
4946 xw->hints.flags |= (PSize | PBaseSize | PMinSize | PResizeInc);
4948 TRACE_HINTS(&(xw->hints));
4952 getXtermSizeHints(XtermWidget xw)
4954 TScreen *screen = TScreenOf(xw);
4957 if (!XGetWMNormalHints(screen->display, VShellWindow(xw),
4958 &xw->hints, &supp))
4959 memset(&xw->hints, 0, sizeof(xw->hints));
4960 TRACE_HINTS(&(xw->hints));
4964 whichXtermCgs(XtermWidget xw, unsigned attr_flags, Bool hilite)
4966 TScreen *screen = TScreenOf(xw);
4991 updatedXtermGC(XtermWidget xw, unsigned attr_flags, CellColor fg_bg,
4994 TScreen *screen = TScreenOf(xw);
4996 CgsEnum cgsId = whichXtermCgs(xw, attr_flags, hilite);
4997 Pixel my_fg = extract_fg(xw, fg_bg, attr_flags);
4998 Pixel my_bg = extract_bg(xw, fg_bg, attr_flags);
4999 Pixel fg_pix = getXtermFG(xw, attr_flags, (int) my_fg);
5000 Pixel bg_pix = getXtermBG(xw, attr_flags, (int) my_bg);
5008 isNotForeground(xw, fg_pix, bg_pix, selbg_pix));
5010 isNotBackground(xw, fg_pix, bg_pix, selfg_pix));
5028 && selbg_pix != xw->dft_foreground) {
5057 && selbg_pix != xw->dft_foreground) {
5120 setCgsFore(xw, win, cgsId, fg_pix);
5121 setCgsBack(xw, win, cgsId, bg_pix);
5122 return getCgsGC(xw, win, cgsId);
5131 resetXtermGC(XtermWidget xw, unsigned attr_flags, Bool hilite)
5133 TScreen *screen = TScreenOf(xw);
5135 CgsEnum cgsId = whichXtermCgs(xw, attr_flags, hilite);
5136 Pixel fg_pix = getXtermFG(xw, attr_flags, xw->cur_foreground);
5137 Pixel bg_pix = getXtermBG(xw, attr_flags, xw->cur_background);
5139 checkVeryBoldColors(attr_flags, xw->cur_foreground);
5142 setCgsFore(xw, win, cgsId, bg_pix);
5143 setCgsBack(xw, win, cgsId, fg_pix);
5145 setCgsFore(xw, win, cgsId, fg_pix);
5146 setCgsBack(xw, win, cgsId, bg_pix);
5156 extract_fg(XtermWidget xw, CellColor color, unsigned attr_flags)
5160 if (TScreenOf(xw)->colorAttrMode
5162 fg = MapToColorMode(fg, TScreenOf(xw), attr_flags);
5172 extract_bg(XtermWidget xw, CellColor color, unsigned attr_flags)
5176 if (TScreenOf(xw)->colorAttrMode
5178 if (TScreenOf(xw)->colorRVMode && (attr_flags & INVERSE))
5194 makeColorPair(XtermWidget xw)
5199 result.fg = xw->cur_foreground;
5200 result.bg = xw->cur_background;
5202 int fg = xw->cur_foreground;
5203 int bg = xw->cur_background;
5217 ClearCurBackground(XtermWidget xw,
5224 TScreen *screen = TScreenOf(xw);
5233 xw->cur_background,
5237 set_background(xw, xw->cur_background);
5239 xtermClear2(xw,
5245 set_background(xw, -1);
5251 getXtermBackground(XtermWidget xw, unsigned attr_flags, int color)
5253 Pixel result = T_COLOR(TScreenOf(xw), TEXT_BG);
5257 if_OPT_DIRECT_COLOR2_else(TScreenOf(xw), (attr_flags & ATR_DIRECT_BG), {
5260 result = GET_COLOR_RES(xw, TScreenOf(xw)->Acolors[color]);
5295 computeFaint(XtermWidget xw, unsigned value, unsigned compare)
5297 TScreen *screen = TScreenOf(xw);
5309 getXtermForeground(XtermWidget xw, unsigned attr_flags, int color)
5311 Pixel result = T_COLOR(TScreenOf(xw), TEXT_FG);
5314 if_OPT_DIRECT_COLOR2_else(TScreenOf(xw), (attr_flags & ATR_DIRECT_FG), {
5319 result = GET_COLOR_RES(xw, TScreenOf(xw)->Acolors[color]);
5329 #define DIM_IT(n) work.n = (unsigned short) computeFaint(xw, work.n, bkg.n)
5332 Pixel bg = T_COLOR(TScreenOf(xw), TEXT_BG);
5345 have_bg = QueryOneColor(xw, &bkg);
5358 if (QueryOneColor(xw, &work)) {
5363 if (allocateBestRGB(xw, &work)) {
5385 if (QueryOneColor(xw, &work)) {
5389 if (allocateBestRGB(xw, &work)) {
5479 set_keyboard_type(XtermWidget xw, xtermKeyboardType type, Bool set)
5481 xtermKeyboardType save = xw->keyboard.type;
5486 visibleKeyboardType(xw->keyboard.type)));
5488 xw->keyboard.type = type;
5490 xw->keyboard.type = keyboardIsDefault;
5493 if (save != xw->keyboard.type) {
5499 toggle_keyboard_type(XtermWidget xw, xtermKeyboardType type)
5501 xtermKeyboardType save = xw->keyboard.type;
5505 visibleKeyboardType(xw->keyboard.type)));
5506 if (xw->keyboard.type == type) {
5507 xw->keyboard.type = keyboardIsDefault;
5509 xw->keyboard.type = type;
5512 if (save != xw->keyboard.type) {
5534 init_keyboard_type(XtermWidget xw, xtermKeyboardType type, Bool set)
5539 visibleKeyboardType(xw->keyboard.type)));
5547 visibleKeyboardType(xw->keyboard.type),
5550 xw->keyboard.type = type;
5561 decode_keyboard_type(XtermWidget xw, XTERM_RESOURCE * rp)
5588 TScreen *screen = TScreenOf(xw);
5596 init_keyboard_type(xw, table[n].type, FLAG(n));
5603 init_keyboard_type(xw, table[n].type, False);
5626 init_keyboard_type(xw, table[n].type, FLAG(n));
5694 decode_wcwidth(XtermWidget xw)
5696 int mode = ((xw->misc.cjk_width ? 2 : 0)
5697 + (xw->misc.mk_width ? 1 : 0)
5704 systemWcwidthOk(xw->misc.mk_samplesize, xw->misc.mk_samplepass)) {