xterm  368
About: xterm is a terminal emulator for X with ISO/ANSI color and vt220 enhancements.
  Fossies Dox: xterm-368.tgz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

ptyx.h File Reference
#include <X11/IntrinsicP.h>
#include <X11/Shell.h>
#include <X11/StringDefs.h>
#include <X11/Xmu/Misc.h>
#include <X11/cursorfont.h>
#include <X11/Xfuncs.h>
#include <X11/Xosdefs.h>
#include <X11/Xmu/Converters.h>
#include <stdio.h>
#include <stdint.h>
#include <xcharmouse.h>
Include dependency graph for ptyx.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CELL
 
struct  SelectedCells
 
struct  OptionHelp
 
struct  PARAMS
 
struct  ANSI
 
struct  Tmodes
 
struct  T_fontsize
 
struct  BitmapBits
 
struct  InternalSelect
 
struct  PtyData
 
struct  CellColor
 
struct  LineData
 
struct  CellData
 
struct  FontMap
 
struct  XTermFonts
 
struct  XTermRect
 
struct  ColorRes
 
struct  PrinterFlags
 
struct  PrinterState
 
struct  ScrnColors
 
struct  SavedCursor
 
struct  _SaveTitle
 
struct  SbInfo
 
struct  VTwin
 
struct  TKwin
 
struct  VTFontNames
 
struct  VTFontList
 
struct  XtermFontNames
 
struct  SubResourceRec
 
struct  TScreen
 
struct  _TekPart
 
struct  _TekScreen
 
struct  FlagList
 
struct  TModify
 
struct  TKeyboard
 
struct  _Misc
 
struct  _Work
 
struct  XtermClassPart
 
struct  _XtermClassRec
 
struct  _TekClassRec
 
struct  SavedSGR
 
struct  ColorSlot
 
struct  SavedColors
 
struct  _XtermWidgetRec
 
struct  _TekWidgetRec
 
struct  XTermDraw
 
struct  Tek_Link
 

Macros

#define DECONST(type, s)   ((type *)(intptr_t)(const type *)(s))
 
#define MyStackAlloc(size, stack_cache_array)
 
#define MyStackFree(pointer, stack_cache_array)    if ((pointer) != ((char *)(stack_cache_array))) free(pointer)
 
#define TypeCallocN(type, n)   (type *)calloc((size_t) (n), sizeof(type))
 
#define TypeCalloc(type)   TypeCallocN(type, 1)
 
#define TypeMallocN(type, n)   (type *)malloc(sizeof(type) * (size_t) (n))
 
#define TypeMalloc(type)   TypeMallocN(type, 1)
 
#define TypeRealloc(type, n, p)   (type *)realloc(p, (n) * sizeof(type))
 
#define TypeXtReallocN(t, p, n)   (t *)(void *)XtRealloc((char *)(p), (Cardinal)(sizeof(t) * (size_t) (n)))
 
#define TypeXtMallocX(type, n)   (type *)(void *)XtMalloc((Cardinal)(sizeof(type) + (size_t) (n)))
 
#define TypeXtMallocN(type, n)   (type *)(void *)XtMalloc((Cardinal)(sizeof(type) * (size_t) (n)))
 
#define TypeXtMalloc(type)   TypeXtMallocN(type, 1)
 
#define CastMalloc(type)   (type *)malloc(sizeof(type))
 
#define BumpBuffer(type, buffer, size, want)
 
#define BfBuf(type)   screen->bf_buf_##type
 
#define BfLen(type)   screen->bf_len_##type
 
#define TypedBuffer(type)
 
#define BumpTypedBuffer(type, want)    BumpBuffer(type, BfBuf(type), BfLen(type), want)
 
#define FreeTypedBuffer(type)
 
#define FreeAndNull(value)
 
#define USE_PTY_DEVICE   1
 
#define USE_PTY_SEARCH   1
 
#define USE_HANDSHAKE   1
 
#define PTYDEV   "/dev/ptyxx"
 
#define TTYDEV   "/dev/ttyxx"
 
#define PTYCHAR1   "pqrstuvwxyzPQRSTUVWXYZ"
 
#define PTYCHAR2   "0123456789abcdef"
 
#define TTYFORMAT   "/dev/ttyp%d"
 
#define PTYFORMAT   "/dev/ptyp%d"
 
#define PTYCHARLEN   2
 
#define MAXPTTYS   2048
 
#define MaxCols(screen)   ((screen)->max_col + 1)
 
#define MaxRows(screen)   ((screen)->max_row + 1)
 
#define IsEmpty(s)   ((s) == 0 || *(s) == '\0')
 
#define IsSpace(c)   ((c) == ' ' || (c) == '\t' || (c) == '\r' || (c) == '\n')
 
#define FullS2L(s, d)   (PartS2L(s,d) && (*(d) == '\0'))
 
#define PartS2L(s, d)   (isdigit(CharOf(*(s))) && (d) != (s) && (d) != 0)
 
#define CASETYPE(name)   case name: result = #name; break
 
#define CharOf(n)   ((Char)(n))
 
#define isSameRow(a, b)   ((a)->row == (b)->row)
 
#define isSameCol(a, b)   ((a)->col == (b)->col)
 
#define isSameCELL(a, b)   (isSameRow(a,b) && isSameCol(a,b))
 
#define xBIT(n)   (1 << (n))
 
#define ANSI_EOT   0x04
 
#define ANSI_BEL   0x07
 
#define ANSI_BS   0x08
 
#define ANSI_HT   0x09
 
#define ANSI_LF   0x0A
 
#define ANSI_VT   0x0B
 
#define ANSI_FF   0x0C /* C0, C1 control names */
 
#define ANSI_CR   0x0D
 
#define ANSI_SO   0x0E
 
#define ANSI_SI   0x0F
 
#define ANSI_XON   0x11 /* DC1 */
 
#define ANSI_XOFF   0x13 /* DC3 */
 
#define ANSI_NAK   0x15
 
#define ANSI_CAN   0x18
 
#define ANSI_ESC   0x1B
 
#define ANSI_SPA   0x20
 
#define XTERM_POUND   0x1E /* internal mapping for '#' */
 
#define ANSI_DEL   0x7F
 
#define ANSI_SS2   0x8E
 
#define ANSI_SS3   0x8F
 
#define ANSI_DCS   0x90
 
#define ANSI_SOS   0x98
 
#define ANSI_CSI   0x9B
 
#define ANSI_ST   0x9C
 
#define ANSI_OSC   0x9D
 
#define ANSI_PM   0x9E
 
#define ANSI_APC   0x9F
 
#define BAD_ASCII   '?'
 
#define NonLatin1(c)
 
#define OnlyLatin1(c)   (NonLatin1(c) ? BAD_ASCII : (c))
 
#define L_CURL   '{'
 
#define R_CURL   '}'
 
#define MIN_DECID   52 /* can emulate VT52 */
 
#define MAX_DECID   525 /* ...through VT525 */
 
#define DFT_DECID   "420" /* default VT420 */
 
#define DFT_KBD_DIALECT   "B" /* default USASCII */
 
#define MAX_I_PARAM   65535 /* parameters */
 
#define MAX_I_DELAY   32767 /* time-delay in ReGIS */
 
#define MAX_U_COLOR   65535u /* colors */
 
#define MAX_U_COORD   32767u /* coordinates */
 
#define MAX_U_STRING   65535u /* string-length */
 
#define UCS_REPL   0xfffd
 
#define UCS_LIMIT   0x80000000U /* both limit and flag for non-UCS */
 
#define TERMCAP_SIZE   1500 /* 1023 is standard; 'screen' exceeds */
 
#define MAX_XLFD_FONTS   1
 
#define MAX_XFT_FONTS   1
 
#define NMENUFONTS   10 /* font entries in fontMenu */
 
#define NBOX   5 /* Number of Points in box */
 
#define NPARAM   30 /* Max. parameters */
 
#define TEK_FONT_LARGE   0
 
#define TEK_FONT_2   1
 
#define TEK_FONT_3   2
 
#define TEK_FONT_SMALL   3
 
#define TEKNUMFONTS   4
 
#define TEKNUMLINES   4
 
#define EXCHANGE(a, b, tmp)   tmp = a; a = b; b = tmp
 
#define NO_ACTIVE_ICON   1 /* Note: code relies on an X11R6 function */
 
#define OPT_AIX_COLORS   1 /* true if xterm is configured with AIX (16) colors */
 
#define OPT_ALLOW_XXX_OPS   1 /* true if xterm adds "Allow XXX Ops" submenu */
 
#define OPT_BLINK_CURS   1 /* true if xterm has blinking cursor capability */
 
#define OPT_BLINK_TEXT   OPT_BLINK_CURS /* true if xterm has blinking text capability */
 
#define OPT_BOX_CHARS   1 /* true if xterm can simulate box-characters */
 
#define OPT_BUILTIN_XPMS   0 /* true if all xpm data is compiled-in */
 
#define OPT_BROKEN_OSC   0 /* true if xterm allows Linux's broken OSC parsing */
 
#define OPT_BROKEN_ST   1 /* true if xterm allows old/broken OSC parsing */
 
#define OPT_C1_PRINT   1 /* true if xterm allows C1 controls to be printable */
 
#define OPT_CLIP_BOLD   1 /* true if xterm uses clipping to avoid bold-trash */
 
#define OPT_COLOR_CLASS   1 /* true if xterm uses separate color-resource classes */
 
#define OPT_COLOR_RES   1 /* true if xterm delays color-resource evaluation */
 
#define OPT_DABBREV   0 /* dynamic abbreviations */
 
#define OPT_DEC_CHRSET   1 /* true if xterm is configured for DEC charset */
 
#define OPT_DEC_LOCATOR   0 /* true if xterm supports VT220-style mouse events */
 
#define OPT_DEC_RECTOPS   1 /* true if xterm is configured for VT420 rectangles */
 
#define OPT_SIXEL_GRAPHICS   0 /* true if xterm supports VT240-style sixel graphics */
 
#define OPT_PRINT_GRAPHICS   0 /* true if xterm supports screen dumps as sixel graphics */
 
#define OPT_SCREEN_DUMPS   1 /* true if xterm supports screen dumps */
 
#define OPT_REGIS_GRAPHICS   0 /* true if xterm supports VT125/VT240/VT330 ReGIS graphics */
 
#define OPT_GRAPHICS   0 /* true if xterm is configured for any type of graphics */
 
#define OPT_DEC_SOFTFONT   0 /* true if xterm is configured for VT220 softfonts */
 
#define OPT_DOUBLE_BUFFER   0 /* true if using double-buffering */
 
#define OPT_EBCDIC   0
 
#define OPT_EXEC_XTERM   0 /* true if xterm can fork/exec copies of itself */
 
#define OPT_EXTRA_PASTE   1
 
#define OPT_FIFO_LINES   1 /* optimize save-lines feature using FIFO */
 
#define OPT_FOCUS_EVENT   1 /* focus in/out events */
 
#define OPT_HP_FUNC_KEYS   0 /* true if xterm supports HP-style function keys */
 
#define OPT_I18N_SUPPORT   0
 
#define OPT_INITIAL_ERASE   1 /* use pty's erase character if it's not 128 */
 
#define OPT_INPUT_METHOD   0
 
#define OPT_ISO_COLORS   1 /* true if xterm is configured with ISO colors */
 
#define OPT_DIRECT_COLOR   OPT_ISO_COLORS /* true if xterm is configured with direct-colors */
 
#define OPT_256_COLORS   1 /* true if xterm is configured with 256 colors */
 
#define OPT_88_COLORS   1 /* true if xterm is configured with 88 colors */
 
#define OPT_HIGHLIGHT_COLOR   1 /* true if xterm supports color highlighting */
 
#define OPT_LOAD_VTFONTS   0 /* true if xterm has load-vt-fonts() action */
 
#define OPT_LUIT_PROG   1 /* true if xterm supports luit */
 
#define OPT_MAXIMIZE   1 /* add actions for iconify ... maximize */
 
#define OPT_MINI_LUIT   0 /* true if xterm supports built-in mini-luit */
 
#define OPT_MOD_FKEYS   1 /* modify cursor- and function-keys in normal mode */
 
#define OPT_NUM_LOCK   1 /* use NumLock key only for numeric-keypad */
 
#define OPT_PASTE64   1 /* program control of select/paste via base64 */
 
#define OPT_PC_COLORS   1 /* true if xterm supports PC-style (bold) colors */
 
#define OPT_PRINT_ON_EXIT   1 /* true allows xterm to dump screen on X error */
 
#define OPT_PTY_HANDSHAKE   USE_HANDSHAKE /* avoid pty races on older systems */
 
#define OPT_PRINT_COLORS   1 /* true if we print color information */
 
#define OPT_READLINE   0 /* mouse-click/paste support for readline */
 
#define OPT_RENDERFONT   0
 
#define OPT_RENDERWIDE   0
 
#define OPT_REPORT_CCLASS   1 /* provide "-report-charclass" option */
 
#define OPT_REPORT_COLORS   1 /* provide "-report-colors" option */
 
#define OPT_REPORT_FONTS   1 /* provide "-report-fonts" option */
 
#define OPT_REPORT_ICONS   1 /* provide "-report-icons" option */
 
#define OPT_SAME_NAME   1 /* suppress redundant updates of title, icon, etc. */
 
#define OPT_SAVE_LINES   OPT_FIFO_LINES /* optimize save-lines feature */
 
#define OPT_SCO_FUNC_KEYS   0 /* true if xterm supports SCO-style function keys */
 
#define OPT_SUN_FUNC_KEYS   1 /* true if xterm supports Sun-style function keys */
 
#define OPT_SCROLL_LOCK   1 /* true if xterm interprets fontsize-shifting */
 
#define OPT_SELECT_REGEX   1 /* true if xterm supports regular-expression selects */
 
#define OPT_SELECTION_OPS   1 /* true if xterm supports operations on selection */
 
#define OPT_SESSION_MGT   0
 
#define OPT_SHIFT_FONTS   1 /* true if xterm interprets fontsize-shifting */
 
#define OPT_SUNPC_KBD   1 /* true if xterm supports Sun/PC keyboard map */
 
#define OPT_TCAP_FKEYS   1 /* true for termcap function-keys */
 
#define OPT_TCAP_QUERY   1 /* true for termcap query */
 
#define OPT_TEK4014   1 /* true if we're using tek4014 emulation */
 
#define OPT_TOOLBAR   0 /* true if xterm supports toolbar menus */
 
#define OPT_TRACE   0 /* true if we're using debugging traces */
 
#define OPT_TRACE_FLAGS   0 /* additional tracing used for SCRN_BUF_FLAGS */
 
#define OPT_TRACE_UNIQUE   0 /* true if we're using multiple trace files */
 
#define OPT_VT52_MODE   1 /* true if xterm supports VT52 emulation */
 
#define OPT_WIDE_ATTRS   1 /* true if xterm supports 16-bit attributes */
 
#define OPT_WIDE_CHARS   1 /* true if xterm supports 16-bit characters */
 
#define OPT_WIDER_ICHAR   1 /* true if xterm uses 32-bits for wide-chars */
 
#define OPT_XMC_GLITCH   0 /* true if xterm supports xmc (magic cookie glitch) */
 
#define OPT_XRES_QUERY   1 /* true for resource query */
 
#define OPT_XTERM_SGR   1 /* true if xterm supports private SGR controls */
 
#define OPT_ZICONBEEP   1 /* true if xterm supports "-ziconbeep" option */
 
#define OPT_COLOR_RES2   1
 
#define OPT_88_COLORS   0
 
#define for_each_text_gc(n)   for (n = gcNorm; n < gcVTcursNormal; ++n)
 
#define for_each_curs_gc(n)   for (n = gcVTcursNormal; n <= gcVTcursOutline; ++n)
 
#define for_each_gc(n)   for (n = gcNorm; n < gcMAX; ++n)
 
#define IsTitleMode(xw, mode)   (((xw)->screen.title_modes & mode) != 0)
 
#define nrc_percent   100
 
#define nrc_dquote   200
 
#define nrc_ampersand   300
 
#define DATA(name)   ep##name
 
#define COLOR_DEFINED(s, w)   ((s)->which & (unsigned) (1<<(w)))
 
#define COLOR_VALUE(s, w)   ((s)->colors[w])
 
#define SET_COLOR_VALUE(s, w, v)   (((s)->colors[w] = (v)), UIntSet((s)->which, (1<<(w))))
 
#define COLOR_NAME(s, w)   ((s)->names[w])
 
#define SET_COLOR_NAME(s, w, v)   (((s)->names[w] = (v)), ((s)->which |= (unsigned) (1<<(w))))
 
#define UNDEFINE_COLOR(s, w)   ((s)->which &= (~((w)<<1)))
 
#define COLOR_FLAGS   (FG_COLOR | BG_COLOR | ATR_DIRECT_FG | ATR_DIRECT_BG)
 
#define TERM_COLOR_FLAGS(xw)   ((xw)->flags & COLOR_FLAGS)
 
#define COLOR_0   0
 
#define COLOR_1   1
 
#define COLOR_2   2
 
#define COLOR_3   3
 
#define COLOR_4   4
 
#define COLOR_5   5
 
#define COLOR_6   6
 
#define COLOR_7   7
 
#define COLOR_8   8
 
#define COLOR_9   9
 
#define COLOR_10   10
 
#define COLOR_11   11
 
#define COLOR_12   12
 
#define COLOR_13   13
 
#define COLOR_14   14
 
#define COLOR_15   15
 
#define MIN_ANSI_COLORS   16
 
#define NUM_ANSI_COLORS   256
 
#define okIndexedColor(n)   ((n) >= 0 && (n) < NUM_ANSI_COLORS)
 
#define OPT_EXT_COLORS   1
 
#define COLOR_BD   (NUM_ANSI_COLORS) /* BOLD */
 
#define COLOR_UL   (NUM_ANSI_COLORS+1) /* UNDERLINE */
 
#define COLOR_BL   (NUM_ANSI_COLORS+2) /* BLINK */
 
#define COLOR_RV   (NUM_ANSI_COLORS+3) /* REVERSE */
 
#define COLOR_IT   (NUM_ANSI_COLORS+4) /* ITALIC */
 
#define MAXCOLORS   (NUM_ANSI_COLORS+5)
 
#define DFT_COLORMODE   True /* default colorMode resource */
 
#define UseItalicFont(screen)   (!(screen)->colorITMode)
 
#define ReverseOrHilite(screen, flags, hilite)
 
#define if_OPT_AIX_COLORS(screen, code)   if(screen->colorMode) code
 
#define if_OPT_ISO_COLORS(screen, code)   if (screen->colorMode) code
 
#define if_OPT_DIRECT_COLOR(screen, code)   if (screen->direct_color) code
 
#define if_OPT_DIRECT_COLOR2(screen, test, code)   if (screen->direct_color && (test)) code
 
#define if_OPT_DIRECT_COLOR2_else(cond, test, stmt)    if_OPT_DIRECT_COLOR2(cond, test, stmt else)
 
#define COLOR_RES_NAME(root)   "color" root
 
#define COLOR_RES_CLASS(root)   "Color" root
 
#define COLOR_RES(root, offset, value)   Sres(COLOR_RES_NAME(root), COLOR_RES_CLASS(root), offset.resource, value)
 
#define COLOR_RES2(name, class, offset, value)   Sres(name, class, offset.resource, value)
 
#define CLICK_RES_NAME(count)   "on" count "Clicks"
 
#define CLICK_RES_CLASS(count)   "On" count "Clicks"
 
#define CLICK_RES(count, offset, value)   Sres(CLICK_RES_NAME(count), CLICK_RES_CLASS(count), offset, value)
 
#define if_OPT_DEC_CHRSET(code)   code
 
#define CSET_SWL   0
 
#define CSET_DHL_TOP   1
 
#define CSET_DHL_BOT   2
 
#define CSET_DWL   3
 
#define NUM_CHRSET   8 /* normal/bold and 4 CSET_xxx values */
 
#define CSET_NORMAL(code)   ((code) == CSET_SWL)
 
#define CSET_DOUBLE(code)   (!CSET_NORMAL(code) && !CSET_EXTEND(code))
 
#define CSET_EXTEND(code)   ((int)(code) > CSET_DWL)
 
#define DBLCS_BITS   4
 
#define DBLCS_MASK   BITS2MASK(DBLCS_BITS)
 
#define GetLineDblCS(ld)   (((ld)->bufHead >> LINEFLAG_BITS) & DBLCS_MASK)
 
#define SetLineDblCS(ld, cs)   (ld)->bufHead = (RowData) ((ld->bufHead & LINEFLAG_MASK) | (cs << LINEFLAG_BITS))
 
#define LineCharSet(screen, ld)
 
#define LineMaxCol(screen, ld)
 
#define LineCursorX(screen, ld, col)
 
#define LineFontWidth(screen, ld)
 
#define E2A(a)   (a)
 
#define A2E(a)   (a)
 
#define CONTROL(a)   (A2E(E2A(a)&037))
 
#define TEK4014_ACTIVE(xw)   ((xw)->misc.TekEmu)
 
#define TEK4014_SHOWN(xw)   ((xw)->misc.Tshow)
 
#define CURRENT_EMU_VAL(tek, vt)   (TEK4014_ACTIVE(term) ? tek : vt)
 
#define CURRENT_EMU()   CURRENT_EMU_VAL((Widget)tekWidget, (Widget)term)
 
#define SHELL_OF(widget)   XtParent(widget)
 
#define if_OPT_VT52_MODE(screen, code)   if(screen->vtXX_level == 0) code
 
#define if_OPT_XMC_GLITCH(screen, code)   /* nothing */
 
#define LO_BYTE(ch)   CharOf((ch) & 0xff)
 
#define HI_BYTE(ch)   CharOf((ch) >> 8)
 
#define if_OPT_WIDE_CHARS(screen, code)   if(screen->wide_chars) code
 
#define if_WIDE_OR_NARROW(screen, wide, narrow)   if(screen->wide_chars) wide else narrow
 
#define NARROW_ICHAR   0xffff
 
#define WIDEST_ICHAR   0x1fffff
 
#define RES_OFFSET(offset)   XtOffsetOf(XtermWidgetRec, offset)
 
#define RES_NAME(name)   name
 
#define RES_CLASS(name)   name
 
#define Bres(name, class, offset, dftvalue)
 
#define Cres(name, class, offset, dftvalue)
 
#define Tres(name, class, offset, dftvalue)    COLOR_RES2(name, class, screen.Tcolors[offset], dftvalue) \
 
#define Fres(name, class, offset, dftvalue)
 
#define Ires(name, class, offset, dftvalue)
 
#define Dres(name, class, offset, dftvalue)
 
#define Sres(name, class, offset, dftvalue)
 
#define Wres(name, class, offset, dftvalue)
 
#define FRG_SIZE   resource.minBufSize
 
#define BUF_SIZE   resource.maxBufSize
 
#define isSameCColor(p, q)   (!memcmp(&(p), &(q), sizeof(CellColor)))
 
#define NO_COLOR   ((unsigned)-1)
 
#define BITS2MASK(b)   ((1 << b) - 1)
 
#define COLOR_MASK   BITS2MASK(COLOR_BITS)
 
#define clrDirectFG(flags)   UIntClr(flags, ATR_DIRECT_FG)
 
#define clrDirectBG(flags)   UIntClr(flags, ATR_DIRECT_BG)
 
#define GetCellColorFG(data)   ((data).fg)
 
#define GetCellColorBG(data)   ((data).bg)
 
#define hasDirectFG(flags)   ((flags) & ATR_DIRECT_FG)
 
#define hasDirectBG(flags)   ((flags) & ATR_DIRECT_BG)
 
#define setDirectFG(flags, test)   if (test) UIntSet(flags, ATR_DIRECT_FG); else UIntClr(flags, ATR_DIRECT_FG)
 
#define setDirectBG(flags, test)   if (test) UIntSet(flags, ATR_DIRECT_BG); else UIntClr(flags, ATR_DIRECT_BG)
 
#define LINEFLAG_BITS   4
 
#define LINEFLAG_MASK   BITS2MASK(LINEFLAG_BITS)
 
#define GetLineFlags(ld)   ((ld)->bufHead & LINEFLAG_MASK)
 
#define SetLineFlags(ld, xx)   (ld)->bufHead = (RowData) ((ld->bufHead & (DBLCS_MASK << LINEFLAG_BITS)) | (xx & LINEFLAG_MASK))
 
#define for_each_combData(off, ld)   for (off = 0; off < ld->combSize; ++off)
 
#define Clear1Cell(ld, x)
 
#define Clear2Cell(dst, src, x)
 
#define SizeOfLineData   offsetof(LineData, combData)
 
#define SizeOfCellData   offsetof(CellData, combData)
 
#define ROW2INX(screen, row)   ((row) + (screen)->topline)
 
#define INX2ROW(screen, inx)   ((inx) - (screen)->topline)
 
#define okScrnRow(screen, row)
 
#define KNOWN_MISSING   256
 
#define DoSM(code, value)   screen->save_modes[code] = (unsigned) (value)
 
#define DoRM(code, value)   value = (Boolean) screen->save_modes[code]
 
#define DoRM0(code, value)   value = screen->save_modes[code]
 
#define NUM_POPUP_MENUS   4
 
#define NUM_GSETS   4
 
#define SAVED_CURSORS   2
 
#define isCursorBlock(s)   ((s)->cursor_shape == CURSOR_BLOCK)
 
#define isCursorUnderline(s)   ((s)->cursor_shape == CURSOR_UNDERLINE)
 
#define isCursorBar(s)   ((s)->cursor_shape == CURSOR_BAR)
 
#define GraphicsTermId(screen)   (screen)->terminal_id
 
#define optRegisGraphics(screen)   False
 
#define optSixelGraphics(screen)   False
 
#define if_PRINT_GRAPHICS2(statement)   /* nothing */
 
#define MAX_CUT_BUFFER   8 /* CUT_BUFFER0 to CUT_BUFFER7 */
 
#define MAX_SELECTIONS   (MAX_SELECTION_CODES + MAX_CUT_BUFFER)
 
#define MenuFontName(n)   menu_font_names[n][fNorm]
 
#define EscapeFontName()   MenuFontName(fontMenu_fontescape)
 
#define SelectFontName()   MenuFontName(fontMenu_fontsel)
 
#define SCREEN_FLAG(screenp, f)   (1&(screenp)->f)
 
#define SCREEN_FLAG_set(screenp, f)   ((screenp)->f |= 1)
 
#define SCREEN_FLAG_unset(screenp, f)   ((screenp)->f &= (unsigned) ~1L)
 
#define SCREEN_FLAG_save(screenp, f)    ((screenp)->f = (((screenp)->f)<<1) | SCREEN_FLAG(screenp,f))
 
#define SCREEN_FLAG_restore(screenp, f)   ((screenp)->f = (((screenp)->f)>>1))
 
#define ResetWrap(screen)
 
#define INWINDOW   01 /* the mouse is in one of the windows */
 
#define FOCUS   02 /* one of the windows is the focus window */
 
#define MULTICLICKTIME   250 /* milliseconds */
 
#define NAME_OLD_KT   " legacy"
 
#define NAME_HP_KT   /*nothing*/
 
#define NAME_SCO_KT   /*nothing*/
 
#define NAME_SUN_KT   " sun"
 
#define NAME_VT220_KT   " vt220"
 
#define NAME_TCAP_KT   " tcap"
 
#define KEYBOARD_TYPES   NAME_TCAP_KT NAME_HP_KT NAME_SCO_KT NAME_SUN_KT NAME_VT220_KT
 
#define TRACE_RC(code, func)   func
 
#define GravityIsNorthWest(w)   ((w)->misc.resizeGravity == NorthWestGravity)
 
#define GravityIsSouthWest(w)   ((w)->misc.resizeGravity == SouthWestGravity)
 
#define MAX_UDK   35
 
#define MAX_POINTER   (XC_num_glyphs/2)
 
#define MAX_EWMH_MODE   3
 
#define MAX_EWMH_DATA   (1 + OPT_TEK4014)
 
#define IsXtermWidget(w)   (XtClass(w) == xtermWidgetClass)
 
#define IsTekWidget(w)   (XtClass(w) == tekWidgetClass)
 
#define MODE_KAM   xBIT(0) /* mode 2: keyboard action mode */
 
#define MODE_DECKPAM   xBIT(1) /* keypad application mode */
 
#define MODE_DECCKM   xBIT(2) /* private mode 1: cursor keys */
 
#define MODE_SRM   xBIT(3) /* mode 12: send-receive mode */
 
#define MODE_DECBKM   xBIT(4) /* private mode 67: backarrow */
 
#define MODE_DECSDM   xBIT(5) /* private mode 80: sixel scrolling mode */
 
#define N_MARGINBELL   10
 
#define TAB_BITS_SHIFT   5 /* FIXME: 2**5 == 32 (should derive) */
 
#define TAB_BITS_WIDTH   (1 << TAB_BITS_SHIFT)
 
#define TAB_ARRAY_SIZE   (1024 / TAB_BITS_WIDTH)
 
#define MAX_TABS   (TAB_BITS_WIDTH * TAB_ARRAY_SIZE)
 
#define OkTAB(c)   ((c) >= 0 && (c) < MAX_TABS)
 
#define MAX_SAVED_SGR   10
 
#define AttrBIT(n)   xBIT(n) /* text-attributes */
 
#define MiscBIT(n)   xBIT(n + 16) /* miscellaneous state flags */
 
#define INVERSE   AttrBIT(0) /* invert the characters to be output */
 
#define UNDERLINE   AttrBIT(1) /* true if underlining */
 
#define BOLD   AttrBIT(2)
 
#define BLINK   AttrBIT(3)
 
#define BG_COLOR   AttrBIT(4) /* true if background set */
 
#define FG_COLOR   AttrBIT(5) /* true if foreground set */
 
#define PROTECTED   AttrBIT(6) /* a character that cannot be erased */
 
#define CHARDRAWN
 
#define ATR_FAINT   AttrBIT(8)
 
#define ATR_ITALIC   AttrBIT(9)
 
#define ATR_STRIKEOUT   AttrBIT(10)
 
#define ATR_DBL_UNDER   AttrBIT(11)
 
#define ATR_DIRECT_FG   AttrBIT(12)
 
#define ATR_DIRECT_BG   AttrBIT(13)
 
#define SGR_MASK2   (ATR_FAINT | ATR_ITALIC | ATR_STRIKEOUT | ATR_DBL_UNDER | ATR_DIRECT_FG | ATR_DIRECT_BG)
 
#define WRAPAROUND   MiscBIT(0) /* true if auto wraparound mode */
 
#define REVERSEWRAP   MiscBIT(1) /* true if reverse wraparound mode */
 
#define REVERSE_VIDEO   MiscBIT(2) /* true if screen white on black */
 
#define LINEFEED   MiscBIT(3) /* true if in auto linefeed mode */
 
#define ORIGIN   MiscBIT(4) /* true if in origin mode */
 
#define INSERT   MiscBIT(5) /* true if in insert mode */
 
#define SMOOTHSCROLL   MiscBIT(6) /* true if in smooth scroll mode */
 
#define IN132COLUMNS   MiscBIT(7) /* true if in 132 column mode */
 
#define INVISIBLE   MiscBIT(8) /* true if writing invisible text */
 
#define NATIONAL   MiscBIT(9) /* true if writing national charset */
 
#define LEFT_RIGHT   MiscBIT(10) /* true if left/right margin mode */
 
#define NOCLEAR_COLM   MiscBIT(11) /* true if no clear on DECCOLM change */
 
#define DrawBIT(n)   xBIT(n + 8) /* XTermDraw.draw_flags */
 
#define NOBACKGROUND   DrawBIT(0) /* Used for overstrike */
 
#define NOTRANSLATION   DrawBIT(1) /* No scan for chars missing in font */
 
#define DOUBLEWFONT   DrawBIT(2) /* The actual X-font is double-width */
 
#define DOUBLEHFONT   DrawBIT(3) /* The actual X-font is double-height */
 
#define CHARBYCHAR   DrawBIT(4) /* Draw chars one-by-one */
 
#define NORESOLUTION   DrawBIT(5) /* find the font without resolution */
 
#define SGR_MASK   (BOLD | BLINK | UNDERLINE | INVERSE)
 
#define ATTRIBUTES   (SGR_MASK | SGR_MASK2 | BG_COLOR | FG_COLOR | INVISIBLE | PROTECTED)
 
#define DRAWX_MASK   (ATTRIBUTES | CHARDRAWN)
 
#define USE_BOLD(screen)   ((screen)->allowBoldFonts)
 
#define BOLDATTR(screen)   (unsigned) (USE_BOLD(screen) ? (BOLD | ((screen)->blink_as_bold ? BLINK : 0)) : 0)
 
#define LINEWRAPPED   AttrBIT(0)
 
#define LINEBLINKED   AttrBIT(1)
 
#define HANDLE_STRUCT_NOTIFY   1
 
#define OFF_PROTECT   0
 
#define DEC_PROTECT   1
 
#define ISO_PROTECT   2
 
#define TScreenOf(xw)   (&(xw)->screen)
 
#define TekScreenOf(tw)   (&(tw)->screen)
 
#define PrinterOf(screen)   (screen)->printer_state
 
#define OriginX(screen)   (ScrollbarWidth(screen) + screen->border)
 
#define OriginY(screen)   (screen->border)
 
#define CursorMoved(screen)
 
#define CursorX2(screen, col, fw)   ((col) * (int)(fw) + OriginX(screen))
 
#define CursorX(screen, col)   CursorX2(screen, col, FontWidth(screen))
 
#define CursorY2(screen, row)   (((row) * FontHeight(screen)) + screen->border)
 
#define CursorY(screen, row)   CursorY2(screen, INX2ROW(screen, row))
 
#define IsIconWin(screen, win)   (False)
 
#define IsIcon(screen)   (False)
 
#define WhichVWin(screen)   (&((screen)->fullVwin))
 
#define WhichTWin(screen)   (&((screen)->fullTwin))
 
#define WhichVFont(screen, name)   getNormalFont(screen, (int)(name))->fs
 
#define FontAscent(screen)   WhichVWin(screen)->f_ascent
 
#define FontDescent(screen)   WhichVWin(screen)->f_descent
 
#define okFont(font)   ((font) != 0 && (font)->fid != 0)
 
#define UsingRenderFont(xw)   (((xw)->work.render_font == True) && !IsIcon(TScreenOf(xw)))
 
#define VWindow(screen)   WhichVWin(screen)->window
 
#define VShellWindow(xw)   XtWindow(SHELL_OF(xw))
 
#define TWindow(screen)   WhichTWin(screen)->window
 
#define TShellWindow   XtWindow(SHELL_OF(tekWidget))
 
#define VDrawable(screen)   VWindow(screen)
 
#define Width(screen)   WhichVWin(screen)->width
 
#define Height(screen)   WhichVWin(screen)->height
 
#define FullWidth(screen)   WhichVWin(screen)->fullwidth
 
#define FullHeight(screen)   WhichVWin(screen)->fullheight
 
#define FontWidth(screen)   WhichVWin(screen)->f_width
 
#define FontHeight(screen)   WhichVWin(screen)->f_height
 
#define NormalFont(screen)   WhichVFont(screen, fNorm)
 
#define BoldFont(screen)   WhichVFont(screen, fBold)
 
#define NormalWFont(screen)   WhichVFont(screen, fWide)
 
#define BoldWFont(screen)   WhichVFont(screen, fWBold)
 
#define ScrollbarWidth(screen)   WhichVWin(screen)->sb_info.width
 
#define ScaleShift(screen)
 
#define BorderGC(w, sp)   WhichVWin(sp)->border_gc
 
#define FillerGC(w, sp)   WhichVWin(sp)->filler_gc
 
#define NormalGC(w, sp)   getCgsGC(w, WhichVWin(sp), gcNorm)
 
#define ReverseGC(w, sp)   getCgsGC(w, WhichVWin(sp), gcNormReverse)
 
#define NormalBoldGC(w, sp)   getCgsGC(w, WhichVWin(sp), gcBold)
 
#define ReverseBoldGC(w, sp)   getCgsGC(w, WhichVWin(sp), gcBoldReverse)
 
#define TWidth(screen)   WhichTWin(screen)->width
 
#define THeight(screen)   WhichTWin(screen)->height
 
#define TFullWidth(screen)   WhichTWin(screen)->fullwidth
 
#define TFullHeight(screen)   WhichTWin(screen)->fullheight
 
#define TekScale(screen)   WhichTWin(screen)->tekscale
 
#define TDefaultRows   37
 
#define TDefaultCols   75
 
#define BorderWidth(w)   ((w)->core.border_width)
 
#define BorderPixel(w)   ((w)->core.border_pixel)
 
#define AllowXtermOps(w, name)   (TScreenOf(w)->name && !TScreenOf(w)->allowSendEvents)
 
#define AllowColorOps(w, name)
 
#define AllowFontOps(w, name)
 
#define AllowMouseOps(w, name)
 
#define AllowTcapOps(w, name)
 
#define AllowTitleOps(w)   AllowXtermOps(w, allowTitleOps)
 
#define AllowXResOps(w)   True
 
#define SpecialWindowOps(w, name)   (!TScreenOf(w)->disallow_win_ops[name])
 
#define AllowWindowOps(w, name)
 
#define ToolbarHeight(w)   0
 
#define TEK_LINK_BLOCK_SIZE   1024
 
#define OFF   0
 
#define ON   1
 
#define BLINKED_OFF   2
 
#define CLEAR   0
 
#define TOGGLE   1
 
#define I_SIGNAL   0x02
 
#define I_TEK   0x04
 

Typedefs

typedef unsigned char Char
 
typedef CharScrnPtr
 
typedef ScrnPtrScrnBuf
 
typedef CharUString
 
typedef short ParmType
 
typedef unsigned short UParm
 
typedef void(* FormatSelect) (Widget, char *, char *, CELL *, CELL *)
 
typedef unsigned IFlags
 
typedef unsigned short IAttr
 
typedef unsigned IChar
 
typedef uint32_t MyPixel
 
typedef int32_t MyColor
 
typedef Char RowData
 
typedef IChar CharData
 
typedef const LineData CLineData
 
typedef struct _SaveTitle SaveTitle
 
typedef XTermFonts *(* MyGetFont) (TScreen *, int)
 
typedef struct _TekPart TekPart
 
typedef struct _TekScreen TekScreen
 
typedef struct _Misc Misc
 
typedef struct _Work Work
 
typedef struct XtermClassPart TekClassPart
 
typedef struct _XtermClassRec XtermClassRec
 
typedef struct _TekClassRec TekClassRec
 
typedef unsigned Tabs[(1024/(1<< 5))]
 
typedef struct _XtermWidgetRec XtermWidgetRec
 
typedef struct _XtermWidgetRecXtermWidget
 
typedef struct _TekWidgetRec TekWidgetRec
 
typedef struct _TekWidgetRecTekWidget
 
typedef struct Tek_Link TekLink
 

Enumerations

enum  EventMode { NORMAL = 0 , LEFTEXTENSION , RIGHTEXTENSION }
 
enum  CSBITS {
  csDEC = 0 , csPOSITIVE = (1 << ( 0 )) , csATTRIBS = (1 << ( 1 )) , csNOTRIM = (1 << ( 2 )) ,
  csDRAWN = (1 << ( 3 )) , csBYTE = (1 << ( 4 )) , cs8TH = (1 << ( 5 ))
}
 
enum  VTFontEnum {
  fNorm = 0 , fBold , fItal , fBtal ,
  fWide , fWBold , fWItal , fWBtal ,
  fMAX
}
 
enum  CgsEnum {
  gcNorm = 0 , gcBold , gcNormReverse , gcBoldReverse ,
  gcFiller , gcBorder , gcLine , gcDots ,
  gcCNorm , gcCBold , gcWide , gcWBold ,
  gcWideReverse , gcWBoldReverse , gcVTcursNormal , gcVTcursFilled ,
  gcVTcursReverse , gcVTcursOutline , gcTKcurs , gcMAX
}
 
enum  TermColors {
  TEXT_FG = 0 , TEXT_BG , TEXT_CURSOR , MOUSE_FG ,
  MOUSE_BG , TEK_FG = 5 , TEK_BG , HIGHLIGHT_BG = 7 ,
  TEK_CURSOR = 8 , HIGHLIGHT_FG = 9 , NCOLORS
}
 
enum  TitleModes { tmSetBase16 = 1 , tmGetBase16 = 2 , tmSetUtf8 = 4 , tmGetUtf8 = 8 }
 
enum  DECNRCM_codes {
  nrc_ASCII = 0 , nrc_British , nrc_British_Latin_1 , nrc_DEC_Cyrillic ,
  nrc_DEC_Spec_Graphic , nrc_DEC_Alt_Chars , nrc_DEC_Alt_Graphics , nrc_DEC_Supp ,
  nrc_DEC_Supp_Graphic , nrc_DEC_Technical , nrc_Dutch , nrc_Finnish ,
  nrc_Finnish2 , nrc_French , nrc_French2 , nrc_French_Canadian ,
  nrc_French_Canadian2 , nrc_German , nrc_Greek , nrc_DEC_Greek_Supp ,
  nrc_ISO_Greek_Supp , nrc_DEC_Hebrew_Supp , nrc_Hebrew , nrc_ISO_Hebrew_Supp ,
  nrc_Italian , nrc_ISO_Latin_1_Supp , nrc_ISO_Latin_2_Supp , nrc_ISO_Latin_5_Supp ,
  nrc_ISO_Latin_Cyrillic , nrc_Norwegian_Danish , nrc_Norwegian_Danish2 , nrc_Norwegian_Danish3 ,
  nrc_Portugese , nrc_Russian , nrc_SCS_NRCS , nrc_Spanish ,
  nrc_Swedish , nrc_Swedish2 , nrc_Swiss , nrc_DEC_Turkish_Supp ,
  nrc_Turkish , nrc_Unknown
}
 
enum  DECSET_codes {
  srm_DECCKM = 1 , srm_DECANM = 2 , srm_DECCOLM = 3 , srm_DECSCLM = 4 ,
  srm_DECSCNM = 5 , srm_DECOM = 6 , srm_DECAWM = 7 , srm_DECARM = 8 ,
  srm_X10_MOUSE = 9 , srm_ATT610_BLINK = 12 , srm_CURSOR_BLINK_OPS = 13 , srm_XOR_CURSOR_BLINKS = 14 ,
  srm_DECPFF = 18 , srm_DECPEX = 19 , srm_DECTCEM = 25 , srm_RXVT_SCROLLBAR = 30 ,
  srm_RXVT_FONTSIZE = 35 , srm_DECTEK = 38 , srm_132COLS = 40 , srm_CURSES_HACK = 41 ,
  srm_DECNRCM = 42 , srm_MARGIN_BELL = 44 , srm_REVERSEWRAP = 45 , srm_ALTBUF = 47 ,
  srm_DECNKM = 66 , srm_DECBKM = 67 , srm_DECLRMM = 69 , srm_DECNCSM = 95 ,
  srm_VT200_MOUSE = 1000 , srm_VT200_HIGHLIGHT_MOUSE = 1001 , srm_BTN_EVENT_MOUSE = 1002 , srm_ANY_EVENT_MOUSE = 1003 ,
  srm_FOCUS_EVENT_MOUSE = 1004 , srm_EXT_MODE_MOUSE = 1005 , srm_SGR_EXT_MODE_MOUSE = 1006 , srm_URXVT_EXT_MODE_MOUSE = 1015 ,
  srm_PIXEL_POSITION_MOUSE = 1016 , srm_ALTERNATE_SCROLL = 1007 , srm_RXVT_SCROLL_TTY_OUTPUT = 1010 , srm_RXVT_SCROLL_TTY_KEYPRESS = 1011 ,
  srm_EIGHT_BIT_META = 1034 , srm_REAL_NUMLOCK = 1035 , srm_META_SENDS_ESC = 1036 , srm_DELETE_IS_DEL = 1037 ,
  srm_ALT_SENDS_ESC = 1039 , srm_KEEP_SELECTION = 1040 , srm_SELECT_TO_CLIPBOARD = 1041 , srm_BELL_IS_URGENT = 1042 ,
  srm_POP_ON_BELL = 1043 , srm_KEEP_CLIPBOARD = 1044 , srm_ALLOW_ALTBUF = 1046 , srm_OPT_ALTBUF = 1047 ,
  srm_SAVE_CURSOR = 1048 , srm_OPT_ALTBUF_CURSOR = 1049 , srm_TCAP_FKEYS = 1050 , srm_SUN_FKEYS = 1051 ,
  srm_LEGACY_FKEYS = 1060 , srm_VT220_FKEYS = 1061 , srm_PASTE_IN_BRACKET = 2004
}
 
enum  SelectionCodes { PRIMARY_CODE = 0 , CLIPBOARD_CODE , SECONDARY_CODE , MAX_SELECTION_CODES }
 
enum  SelectUnit {
  Select_CHAR =0 , Select_WORD , Select_LINE , Select_GROUP ,
  Select_PAGE , Select_ALL , Select_REGEX , NSELECTUNITS
}
 
enum  BlinkOps {
  cbFalse = 0 , cbTrue , cbAlways , cbNever ,
  cbLAST
}
 
enum  ColorOps { ecSetColor = 1 , ecGetColor , ecGetAnsiColor , ecLAST }
 
enum  FontOps { efSetFont = 1 , efGetFont , efLAST }
 
enum  FullscreenOps {
  esFalse = 0 , esTrue , esAlways , esNever ,
  esLAST
}
 
enum  MouseOps {
  emX10 = 1 , emLocator , emVT200Click , emVT200Hilite ,
  emAnyButton , emAnyEvent , emFocusEvent , emExtended ,
  emSGR , emURXVT , emAlternateScroll , emLAST
}
 
enum  PasteControls {
  epNUL = 0 , epSOH = 1 , epSTX = 2 , epETX = 3 ,
  epEOT = 4 , epENQ = 5 , epACK = 6 , epBEL = 7 ,
  epBS = 8 , epHT = 9 , epLF = 10 , epVT = 11 ,
  epFF = 12 , epCR = 13 , epSO = 14 , epSI = 15 ,
  epDLE = 16 , epDC1 = 17 , epDC2 = 18 , epDC3 = 19 ,
  epDC4 = 20 , epNAK = 21 , epSYN = 22 , epETB = 23 ,
  epCAN = 24 , epEM = 25 , epSUB = 26 , epESC = 27 ,
  epFS = 28 , epGS = 29 , epRS = 30 , epUS = 31 ,
  epC0 , epDEL , epLAST
}
 
enum  ShiftEscapeOps {
  ssFalse = 0 , ssTrue = 1 , ssAlways = 2 , ssNever = 3 ,
  ssLAST
}
 
enum  PushSGR {
  psBOLD = 1 , psATR_FAINT = 2 , psATR_ITALIC = 3 , psUNDERLINE = 4 ,
  psBLINK = 5 , psINVERSE = 7 , psINVISIBLE = 8 , psATR_STRIKEOUT = 9 ,
  psFG_COLOR_obs = 10 , psBG_COLOR_obs = 11 , psATR_DBL_UNDER = 21 , psFG_COLOR = 30 ,
  psBG_COLOR = 31 , MAX_PUSH_SGR
}
 
enum  TcapOps { etSetTcap = 1 , etGetTcap , etLAST }
 
enum  WindowOps {
  ewRestoreWin = 1 , ewMinimizeWin = 2 , ewSetWinPosition = 3 , ewSetWinSizePixels = 4 ,
  ewRaiseWin = 5 , ewLowerWin = 6 , ewRefreshWin = 7 , ewSetWinSizeChars = 8 ,
  ewMaximizeWin = 9 , ewFullscreenWin = 10 , ewGetWinState = 11 , ewGetWinPosition = 13 ,
  ewGetWinSizePixels = 14 , ewGetScreenSizePixels = 15 , ewGetCharSizePixels = 16 , ewGetWinSizeChars = 18 ,
  ewGetScreenSizeChars = 19 , ewGetIconTitle = 20 , ewGetWinTitle = 21 , ewPushTitle = 22 ,
  ewPopTitle = 23 , ewSetWinLines , ewSetXprop , ewGetSelection ,
  ewSetSelection , ewGetChecksum , ewSetChecksum , ewLAST
}
 
enum  TcapQuery { XK_TCAPNAME = 3 , XK_COLORS , XK_RGB }
 
enum  fontWarningTypes { fwNever = 0 , fwResource , fwAlways }
 
enum  SaveModes {
  DP_ALLOW_ALTBUF , DP_ALTERNATE_SCROLL , DP_ALT_SENDS_ESC , DP_BELL_IS_URGENT ,
  DP_CRS_VISIBLE , DP_DECANM , DP_DECARM , DP_DECAWM ,
  DP_DECBKM , DP_DECCKM , DP_DECCOLM , DP_DECKPAM ,
  DP_DECNRCM , DP_DECOM , DP_DECPEX , DP_DECPFF ,
  DP_DECSCLM , DP_DECSCNM , DP_DECTCEM , DP_DELETE_IS_DEL ,
  DP_EIGHT_BIT_META , DP_KEEP_CLIPBOARD , DP_KEEP_SELECTION , DP_KEYBOARD_TYPE ,
  DP_POP_ON_BELL , DP_PRN_EXTENT , DP_PRN_FORMFEED , DP_RXVT_SCROLLBAR ,
  DP_RXVT_SCROLL_TTY_KEYPRESS , DP_RXVT_SCROLL_TTY_OUTPUT , DP_SELECT_TO_CLIPBOARD , DP_X_ALTBUF ,
  DP_X_DECCOLM , DP_X_EXT_MOUSE , DP_X_LOGGING , DP_X_LRMM ,
  DP_X_MARGIN , DP_X_MORE , DP_X_MOUSE , DP_X_NCSM ,
  DP_X_REVWRAP , DP_X_X10MSE , DP_CRS_BLINK , DP_X_FOCUS ,
  DP_REAL_NUMLOCK , DP_META_SENDS_ESC , DP_RXVT_FONTSIZE , DP_DECTEK ,
  DP_LAST
}
 
enum  MenuIndex {
  noMenu = -1 , mainMenu , vtMenu , fontMenu ,
  tekMenu
}
 
enum  BellVolume { bvOff = -1 , bvLow = 0 , bvHigh }
 
enum  XtCursorShape { CURSOR_BLOCK = 2 , CURSOR_UNDERLINE = 4 , CURSOR_BAR = 6 }
 
enum  XtCursorStyle {
  DEFAULT_STYLE = 0 , BLINK_BLOCK , STEADY_BLOCK , BLINK_UNDERLINE ,
  STEADY_UNDERLINE , BLINK_BAR , STEADY_BAR
}
 
enum  xtermKeyboardType {
  keyboardIsLegacy , keyboardIsDefault , keyboardIsHP , keyboardIsSCO ,
  keyboardIsSun , keyboardIsTermcap , keyboardIsVT220
}
 
enum  pointerModeTypes { pNever = 0 , pNoMouse = 1 , pAlways = 2 , pFocused = 3 }
 
enum  utf8ModeTypes {
  uFalse = 0 , uTrue = 1 , uAlways = 2 , uDefault = 3 ,
  uLast
}
 
enum  ebMetaModeTypes {
  ebFalse = 0 , ebTrue = 1 , ebNever = 2 , ebLocale = 3 ,
  ebLast
}
 

Functions

const char * visibleKeyboardType (xtermKeyboardType)
 

Variables

CellColor blank_cell_color
 
WidgetClass xtermWidgetClass
 
WidgetClass tekWidgetClass
 

Macro Definition Documentation

◆ A2E

#define A2E (   a)    (a)

Definition at line 1610 of file ptyx.h.

◆ AllowColorOps

#define AllowColorOps (   w,
  name 
)
Value:
(AllowXtermOps(w, allowColorOps) || \
!TScreenOf(w)->disallow_color_ops[name])
const char * name
Definition: main.c:666
#define AllowXtermOps(w, name)
Definition: ptyx.h:3600
#define TScreenOf(xw)
Definition: ptyx.h:3484

Definition at line 3602 of file ptyx.h.

◆ AllowFontOps

#define AllowFontOps (   w,
  name 
)
Value:
(AllowXtermOps(w, allowFontOps) || \
!TScreenOf(w)->disallow_font_ops[name])

Definition at line 3605 of file ptyx.h.

◆ AllowMouseOps

#define AllowMouseOps (   w,
  name 
)
Value:
(AllowXtermOps(w, allowMouseOps) || \
!TScreenOf(w)->disallow_mouse_ops[name])

Definition at line 3608 of file ptyx.h.

◆ AllowTcapOps

#define AllowTcapOps (   w,
  name 
)
Value:
(AllowXtermOps(w, allowTcapOps) || \
!TScreenOf(w)->disallow_tcap_ops[name])

Definition at line 3611 of file ptyx.h.

◆ AllowTitleOps

#define AllowTitleOps (   w)    AllowXtermOps(w, allowTitleOps)

Definition at line 3614 of file ptyx.h.

◆ AllowWindowOps

#define AllowWindowOps (   w,
  name 
)
Value:
(AllowXtermOps(w, allowWindowOps) || \
SpecialWindowOps(w,name))

Definition at line 3619 of file ptyx.h.

◆ AllowXResOps

#define AllowXResOps (   w)    True

Definition at line 3616 of file ptyx.h.

◆ AllowXtermOps

#define AllowXtermOps (   w,
  name 
)    (TScreenOf(w)->name && !TScreenOf(w)->allowSendEvents)

Definition at line 3600 of file ptyx.h.

◆ ANSI_APC

#define ANSI_APC   0x9F

Definition at line 389 of file ptyx.h.

◆ ANSI_BEL

#define ANSI_BEL   0x07

Definition at line 364 of file ptyx.h.

◆ ANSI_BS

#define ANSI_BS   0x08

Definition at line 365 of file ptyx.h.

◆ ANSI_CAN

#define ANSI_CAN   0x18

Definition at line 376 of file ptyx.h.

◆ ANSI_CR

#define ANSI_CR   0x0D

Definition at line 370 of file ptyx.h.

◆ ANSI_CSI

#define ANSI_CSI   0x9B

Definition at line 385 of file ptyx.h.

◆ ANSI_DCS

#define ANSI_DCS   0x90

Definition at line 383 of file ptyx.h.

◆ ANSI_DEL

#define ANSI_DEL   0x7F

Definition at line 380 of file ptyx.h.

◆ ANSI_EOT

#define ANSI_EOT   0x04

Definition at line 363 of file ptyx.h.

◆ ANSI_ESC

#define ANSI_ESC   0x1B

Definition at line 377 of file ptyx.h.

◆ ANSI_FF

#define ANSI_FF   0x0C /* C0, C1 control names */

Definition at line 369 of file ptyx.h.

◆ ANSI_HT

#define ANSI_HT   0x09

Definition at line 366 of file ptyx.h.

◆ ANSI_LF

#define ANSI_LF   0x0A

Definition at line 367 of file ptyx.h.

◆ ANSI_NAK

#define ANSI_NAK   0x15

Definition at line 375 of file ptyx.h.

◆ ANSI_OSC

#define ANSI_OSC   0x9D

Definition at line 387 of file ptyx.h.

◆ ANSI_PM

#define ANSI_PM   0x9E

Definition at line 388 of file ptyx.h.

◆ ANSI_SI

#define ANSI_SI   0x0F

Definition at line 372 of file ptyx.h.

◆ ANSI_SO

#define ANSI_SO   0x0E

Definition at line 371 of file ptyx.h.

◆ ANSI_SOS

#define ANSI_SOS   0x98

Definition at line 384 of file ptyx.h.

◆ ANSI_SPA

#define ANSI_SPA   0x20

Definition at line 378 of file ptyx.h.

◆ ANSI_SS2

#define ANSI_SS2   0x8E

Definition at line 381 of file ptyx.h.

◆ ANSI_SS3

#define ANSI_SS3   0x8F

Definition at line 382 of file ptyx.h.

◆ ANSI_ST

#define ANSI_ST   0x9C

Definition at line 386 of file ptyx.h.

◆ ANSI_VT

#define ANSI_VT   0x0B

Definition at line 368 of file ptyx.h.

◆ ANSI_XOFF

#define ANSI_XOFF   0x13 /* DC3 */

Definition at line 374 of file ptyx.h.

◆ ANSI_XON

#define ANSI_XON   0x11 /* DC1 */

Definition at line 373 of file ptyx.h.

◆ ATR_DBL_UNDER

#define ATR_DBL_UNDER   AttrBIT(11)

Definition at line 3377 of file ptyx.h.

◆ ATR_DIRECT_BG

#define ATR_DIRECT_BG   AttrBIT(13)

Definition at line 3379 of file ptyx.h.

◆ ATR_DIRECT_FG

#define ATR_DIRECT_FG   AttrBIT(12)

Definition at line 3378 of file ptyx.h.

◆ ATR_FAINT

#define ATR_FAINT   AttrBIT(8)

Definition at line 3374 of file ptyx.h.

◆ ATR_ITALIC

#define ATR_ITALIC   AttrBIT(9)

Definition at line 3375 of file ptyx.h.

◆ ATR_STRIKEOUT

#define ATR_STRIKEOUT   AttrBIT(10)

Definition at line 3376 of file ptyx.h.

◆ AttrBIT

#define AttrBIT (   n)    xBIT(n) /* text-attributes */

Definition at line 3354 of file ptyx.h.

◆ ATTRIBUTES

#define ATTRIBUTES   (SGR_MASK | SGR_MASK2 | BG_COLOR | FG_COLOR | INVISIBLE | PROTECTED)

Definition at line 3420 of file ptyx.h.

◆ BAD_ASCII

#define BAD_ASCII   '?'

Definition at line 391 of file ptyx.h.

◆ BfBuf

#define BfBuf (   type)    screen->bf_buf_##type

Definition at line 124 of file ptyx.h.

◆ BfLen

#define BfLen (   type)    screen->bf_len_##type

Definition at line 125 of file ptyx.h.

◆ BG_COLOR

#define BG_COLOR   AttrBIT(4) /* true if background set */

Definition at line 3363 of file ptyx.h.

◆ BITS2MASK

#define BITS2MASK (   b)    ((1 << b) - 1)

Definition at line 1784 of file ptyx.h.

◆ BLINK

#define BLINK   AttrBIT(3)

Definition at line 3361 of file ptyx.h.

◆ BLINKED_OFF

#define BLINKED_OFF   2

Definition at line 3648 of file ptyx.h.

◆ BOLD

#define BOLD   AttrBIT(2)

Definition at line 3360 of file ptyx.h.

◆ BOLDATTR

#define BOLDATTR (   screen)    (unsigned) (USE_BOLD(screen) ? (BOLD | ((screen)->blink_as_bold ? BLINK : 0)) : 0)

Definition at line 3433 of file ptyx.h.

◆ BoldFont

#define BoldFont (   screen)    WhichVFont(screen, fBold)

Definition at line 3564 of file ptyx.h.

◆ BoldWFont

#define BoldWFont (   screen)    WhichVFont(screen, fWBold)

Definition at line 3568 of file ptyx.h.

◆ BorderGC

#define BorderGC (   w,
  sp 
)    WhichVWin(sp)->border_gc

Definition at line 3580 of file ptyx.h.

◆ BorderPixel

#define BorderPixel (   w)    ((w)->core.border_pixel)

Definition at line 3598 of file ptyx.h.

◆ BorderWidth

#define BorderWidth (   w)    ((w)->core.border_width)

Definition at line 3597 of file ptyx.h.

◆ Bres

#define Bres (   name,
  class,
  offset,
  dftvalue 
)
Value:
{RES_NAME(name), RES_CLASS(class), XtRBoolean, sizeof(Boolean), \
RES_OFFSET(offset), XtRImmediate, (XtPointer) dftvalue}
#define RES_OFFSET(offset)
Definition: ptyx.h:1690
#define RES_NAME(name)
Definition: ptyx.h:1693
#define RES_CLASS(name)
Definition: ptyx.h:1694

Definition at line 1696 of file ptyx.h.

◆ BUF_SIZE

#define BUF_SIZE   resource.maxBufSize

Definition at line 1730 of file ptyx.h.

◆ BumpBuffer

#define BumpBuffer (   type,
  buffer,
  size,
  want 
)
Value:
if (want >= size) { \
size = 1 + (want * 2); \
buffer = TypeRealloc(type, size, buffer); \
}
#define TypeRealloc(type, n, p)
Definition: ptyx.h:108
static const char *const size[2]
Definition: resize.c:167
int type
Definition: resize.c:109

Definition at line 118 of file ptyx.h.

◆ BumpTypedBuffer

#define BumpTypedBuffer (   type,
  want 
)     BumpBuffer(type, BfBuf(type), BfLen(type), want)

Definition at line 131 of file ptyx.h.

◆ CASETYPE

#define CASETYPE (   name)    case name: result = #name; break

Definition at line 339 of file ptyx.h.

◆ CastMalloc

#define CastMalloc (   type)    (type *)malloc(sizeof(type))

Definition at line 116 of file ptyx.h.

◆ CHARBYCHAR

#define CHARBYCHAR   DrawBIT(4) /* Draw chars one-by-one */

Definition at line 3407 of file ptyx.h.

◆ CHARDRAWN

#define CHARDRAWN
Value:
AttrBIT(7) /* a character has been drawn here on
the screen. Used to distinguish
blanks from empty parts of the
screen when selecting */
#define AttrBIT(n)
Definition: ptyx.h:3354

Definition at line 3368 of file ptyx.h.

◆ CharOf

#define CharOf (   n)    ((Char)(n))

Definition at line 341 of file ptyx.h.

◆ CLEAR

#define CLEAR   0

Definition at line 3649 of file ptyx.h.

◆ Clear1Cell

#define Clear1Cell (   ld,
  x 
)
Value:
do { \
ld->charData[x] = ' '; \
do { \
if_OPT_WIDE_CHARS(screen, { \
size_t z; \
for_each_combData(z, ld) { \
ld->combData[z][x] = '\0'; \
} \
}) } while (0); \
} while (0)
double x
Definition: graphics.c:1088

Definition at line 1864 of file ptyx.h.

◆ Clear2Cell

#define Clear2Cell (   dst,
  src,
  x 
)
Value:
do { \
dst->charData[x] = ' '; \
dst->attribs[x] = src->attribs[x]; \
do { \
if_OPT_ISO_COLORS(screen, { \
dst->color[x] = src->color[x]; \
}) } while (0); \
do { \
if_OPT_WIDE_CHARS(screen, { \
size_t z; \
for_each_combData(z, dst) { \
dst->combData[z][x] = '\0'; \
} \
}) } while (0); \
} while (0)

Definition at line 1876 of file ptyx.h.

◆ CLICK_RES

#define CLICK_RES (   count,
  offset,
  value 
)    Sres(CLICK_RES_NAME(count), CLICK_RES_CLASS(count), offset, value)

Definition at line 1545 of file ptyx.h.

◆ CLICK_RES_CLASS

#define CLICK_RES_CLASS (   count)    "On" count "Clicks"

Definition at line 1544 of file ptyx.h.

◆ CLICK_RES_NAME

#define CLICK_RES_NAME (   count)    "on" count "Clicks"

Definition at line 1543 of file ptyx.h.

◆ clrDirectBG

#define clrDirectBG (   flags)    UIntClr(flags, ATR_DIRECT_BG)

Definition at line 1790 of file ptyx.h.

◆ clrDirectFG

#define clrDirectFG (   flags)    UIntClr(flags, ATR_DIRECT_FG)

Definition at line 1789 of file ptyx.h.

◆ COLOR_0

#define COLOR_0   0

Definition at line 1424 of file ptyx.h.

◆ COLOR_1

#define COLOR_1   1

Definition at line 1425 of file ptyx.h.

◆ COLOR_10

#define COLOR_10   10

Definition at line 1434 of file ptyx.h.

◆ COLOR_11

#define COLOR_11   11

Definition at line 1435 of file ptyx.h.

◆ COLOR_12

#define COLOR_12   12

Definition at line 1436 of file ptyx.h.

◆ COLOR_13

#define COLOR_13   13

Definition at line 1437 of file ptyx.h.

◆ COLOR_14

#define COLOR_14   14

Definition at line 1438 of file ptyx.h.

◆ COLOR_15

#define COLOR_15   15

Definition at line 1439 of file ptyx.h.

◆ COLOR_2

#define COLOR_2   2

Definition at line 1426 of file ptyx.h.

◆ COLOR_3

#define COLOR_3   3

Definition at line 1427 of file ptyx.h.

◆ COLOR_4

#define COLOR_4   4

Definition at line 1428 of file ptyx.h.

◆ COLOR_5

#define COLOR_5   5

Definition at line 1429 of file ptyx.h.

◆ COLOR_6

#define COLOR_6   6

Definition at line 1430 of file ptyx.h.

◆ COLOR_7

#define COLOR_7   7

Definition at line 1431 of file ptyx.h.

◆ COLOR_8

#define COLOR_8   8

Definition at line 1432 of file ptyx.h.

◆ COLOR_9

#define COLOR_9   9

Definition at line 1433 of file ptyx.h.

◆ COLOR_BD

#define COLOR_BD   (NUM_ANSI_COLORS) /* BOLD */

Definition at line 1458 of file ptyx.h.

◆ COLOR_BL

#define COLOR_BL   (NUM_ANSI_COLORS+2) /* BLINK */

Definition at line 1460 of file ptyx.h.

◆ COLOR_DEFINED

#define COLOR_DEFINED (   s,
 
)    ((s)->which & (unsigned) (1<<(w)))

Definition at line 1406 of file ptyx.h.

◆ COLOR_FLAGS

#define COLOR_FLAGS   (FG_COLOR | BG_COLOR | ATR_DIRECT_FG | ATR_DIRECT_BG)

Definition at line 1419 of file ptyx.h.

◆ COLOR_IT

#define COLOR_IT   (NUM_ANSI_COLORS+4) /* ITALIC */

Definition at line 1464 of file ptyx.h.

◆ COLOR_MASK

#define COLOR_MASK   BITS2MASK(COLOR_BITS)

Definition at line 1786 of file ptyx.h.

◆ COLOR_NAME

#define COLOR_NAME (   s,
 
)    ((s)->names[w])

Definition at line 1410 of file ptyx.h.

◆ COLOR_RES

#define COLOR_RES (   root,
  offset,
  value 
)    Sres(COLOR_RES_NAME(root), COLOR_RES_CLASS(root), offset.resource, value)

Definition at line 1536 of file ptyx.h.

◆ COLOR_RES2

#define COLOR_RES2 (   name,
  class,
  offset,
  value 
)    Sres(name, class, offset.resource, value)

Definition at line 1537 of file ptyx.h.

◆ COLOR_RES_CLASS

#define COLOR_RES_CLASS (   root)    "Color" root

Definition at line 1530 of file ptyx.h.

◆ COLOR_RES_NAME

#define COLOR_RES_NAME (   root)    "color" root

Definition at line 1527 of file ptyx.h.

◆ COLOR_RV

#define COLOR_RV   (NUM_ANSI_COLORS+3) /* REVERSE */

Definition at line 1461 of file ptyx.h.

◆ COLOR_UL

#define COLOR_UL   (NUM_ANSI_COLORS+1) /* UNDERLINE */

Definition at line 1459 of file ptyx.h.

◆ COLOR_VALUE

#define COLOR_VALUE (   s,
 
)    ((s)->colors[w])

Definition at line 1407 of file ptyx.h.

◆ CONTROL

#define CONTROL (   a)    (A2E(E2A(a)&037))

Definition at line 1613 of file ptyx.h.

◆ Cres

#define Cres (   name,
  class,
  offset,
  dftvalue 
)
Value:
{RES_NAME(name), RES_CLASS(class), XtRPixel, sizeof(Pixel), \
RES_OFFSET(offset), XtRString, DECONST(char,dftvalue)}
#define DECONST(type, s)
Definition: ptyx.h:87

Definition at line 1700 of file ptyx.h.

◆ CSET_DHL_BOT

#define CSET_DHL_BOT   2

Definition at line 1554 of file ptyx.h.

◆ CSET_DHL_TOP

#define CSET_DHL_TOP   1

Definition at line 1553 of file ptyx.h.

◆ CSET_DOUBLE

#define CSET_DOUBLE (   code)    (!CSET_NORMAL(code) && !CSET_EXTEND(code))

Definition at line 1560 of file ptyx.h.

◆ CSET_DWL

#define CSET_DWL   3

Definition at line 1555 of file ptyx.h.

◆ CSET_EXTEND

#define CSET_EXTEND (   code)    ((int)(code) > CSET_DWL)

Definition at line 1561 of file ptyx.h.

◆ CSET_NORMAL

#define CSET_NORMAL (   code)    ((code) == CSET_SWL)

Definition at line 1559 of file ptyx.h.

◆ CSET_SWL

#define CSET_SWL   0

Definition at line 1552 of file ptyx.h.

◆ CURRENT_EMU

#define CURRENT_EMU ( )    CURRENT_EMU_VAL((Widget)tekWidget, (Widget)term)

Definition at line 1621 of file ptyx.h.

◆ CURRENT_EMU_VAL

#define CURRENT_EMU_VAL (   tek,
  vt 
)    (TEK4014_ACTIVE(term) ? tek : vt)

Definition at line 1620 of file ptyx.h.

◆ CursorMoved

#define CursorMoved (   screen)
Value:
((screen)->cursor_moved || \
((screen)->cursorp.col != (screen)->cur_col || \
(screen)->cursorp.row != (screen)->cur_row))

Definition at line 3497 of file ptyx.h.

◆ CursorX

#define CursorX (   screen,
  col 
)    CursorX2(screen, col, FontWidth(screen))

Definition at line 3503 of file ptyx.h.

◆ CursorX2

#define CursorX2 (   screen,
  col,
  fw 
)    ((col) * (int)(fw) + OriginX(screen))

Definition at line 3502 of file ptyx.h.

◆ CursorY

#define CursorY (   screen,
  row 
)    CursorY2(screen, INX2ROW(screen, row))

Definition at line 3505 of file ptyx.h.

◆ CursorY2

#define CursorY2 (   screen,
  row 
)    (((row) * FontHeight(screen)) + screen->border)

Definition at line 3504 of file ptyx.h.

◆ DATA

#define DATA (   name)    ep##name

Definition at line 1275 of file ptyx.h.

◆ DBLCS_BITS

#define DBLCS_BITS   4

Definition at line 1563 of file ptyx.h.

◆ DBLCS_MASK

#define DBLCS_MASK   BITS2MASK(DBLCS_BITS)

Definition at line 1564 of file ptyx.h.

◆ DEC_PROTECT

#define DEC_PROTECT   1

Definition at line 3465 of file ptyx.h.

◆ DECONST

#define DECONST (   type,
 
)    ((type *)(intptr_t)(const type *)(s))

Definition at line 87 of file ptyx.h.

◆ DFT_COLORMODE

#define DFT_COLORMODE   True /* default colorMode resource */

Definition at line 1471 of file ptyx.h.

◆ DFT_DECID

#define DFT_DECID   "420" /* default VT420 */

Definition at line 405 of file ptyx.h.

◆ DFT_KBD_DIALECT

#define DFT_KBD_DIALECT   "B" /* default USASCII */

Definition at line 409 of file ptyx.h.

◆ DoRM

#define DoRM (   code,
  value 
)    value = (Boolean) screen->save_modes[code]

Definition at line 2077 of file ptyx.h.

◆ DoRM0

#define DoRM0 (   code,
  value 
)    value = screen->save_modes[code]

Definition at line 2078 of file ptyx.h.

◆ DoSM

#define DoSM (   code,
  value 
)    screen->save_modes[code] = (unsigned) (value)

Definition at line 2076 of file ptyx.h.

◆ DOUBLEHFONT

#define DOUBLEHFONT   DrawBIT(3) /* The actual X-font is double-height */

Definition at line 3406 of file ptyx.h.

◆ DOUBLEWFONT

#define DOUBLEWFONT   DrawBIT(2) /* The actual X-font is double-width */

Definition at line 3405 of file ptyx.h.

◆ DrawBIT

#define DrawBIT (   n)    xBIT(n + 8) /* XTermDraw.draw_flags */

Definition at line 3401 of file ptyx.h.

◆ DRAWX_MASK

#define DRAWX_MASK   (ATTRIBUTES | CHARDRAWN)

Definition at line 3423 of file ptyx.h.

◆ Dres

#define Dres (   name,
  class,
  offset,
  dftvalue 
)
Value:
{RES_NAME(name), RES_CLASS(class), XtRFloat, sizeof(float), \
RES_OFFSET(offset), XtRString, DECONST(char,dftvalue)}

Definition at line 1715 of file ptyx.h.

◆ E2A

#define E2A (   a)    (a)

Definition at line 1609 of file ptyx.h.

◆ EscapeFontName

#define EscapeFontName ( )    MenuFontName(fontMenu_fontescape)

Definition at line 2871 of file ptyx.h.

◆ EXCHANGE

#define EXCHANGE (   a,
  b,
  tmp 
)    tmp = a; a = b; b = tmp

Definition at line 497 of file ptyx.h.

◆ FG_COLOR

#define FG_COLOR   AttrBIT(5) /* true if foreground set */

Definition at line 3364 of file ptyx.h.

◆ FillerGC

#define FillerGC (   w,
  sp 
)    WhichVWin(sp)->filler_gc

Definition at line 3581 of file ptyx.h.

◆ FOCUS

#define FOCUS   02 /* one of the windows is the focus window */

Definition at line 2982 of file ptyx.h.

◆ FontAscent

#define FontAscent (   screen)    WhichVWin(screen)->f_ascent

Definition at line 3530 of file ptyx.h.

◆ FontDescent

#define FontDescent (   screen)    WhichVWin(screen)->f_descent

Definition at line 3531 of file ptyx.h.

◆ FontHeight

#define FontHeight (   screen)    WhichVWin(screen)->f_height

Definition at line 3561 of file ptyx.h.

◆ FontWidth

#define FontWidth (   screen)    WhichVWin(screen)->f_width

Definition at line 3560 of file ptyx.h.

◆ for_each_combData

#define for_each_combData (   off,
  ld 
)    for (off = 0; off < ld->combSize; ++off)

Definition at line 1862 of file ptyx.h.

◆ for_each_curs_gc

#define for_each_curs_gc (   n)    for (n = gcVTcursNormal; n <= gcVTcursOutline; ++n)

Definition at line 964 of file ptyx.h.

◆ for_each_gc

#define for_each_gc (   n)    for (n = gcNorm; n < gcMAX; ++n)

Definition at line 965 of file ptyx.h.

◆ for_each_text_gc

#define for_each_text_gc (   n)    for (n = gcNorm; n < gcVTcursNormal; ++n)

Definition at line 963 of file ptyx.h.

◆ FreeAndNull

#define FreeAndNull (   value)
Value:
do { \
free((void *)(value)); \
value = NULL; \
} while (0)
int value
Definition: main.c:669

Definition at line 140 of file ptyx.h.

◆ FreeTypedBuffer

#define FreeTypedBuffer (   type)
Value:
do { \
FreeAndNull(BfBuf(type)); \
BfLen(type) = 0; \
} while (0)
#define BfBuf(type)
Definition: ptyx.h:124

Definition at line 134 of file ptyx.h.

◆ Fres

#define Fres (   name,
  class,
  offset,
  dftvalue 
)
Value:
{RES_NAME(name), RES_CLASS(class), XtRFontStruct, sizeof(XFontStruct *), \
RES_OFFSET(offset), XtRString, DECONST(char,dftvalue)}

Definition at line 1707 of file ptyx.h.

◆ FRG_SIZE

#define FRG_SIZE   resource.minBufSize

Definition at line 1729 of file ptyx.h.

◆ FullHeight

#define FullHeight (   screen)    WhichVWin(screen)->fullheight

Definition at line 3559 of file ptyx.h.

◆ FullS2L

#define FullS2L (   s,
 
)    (PartS2L(s,d) && (*(d) == '\0'))

Definition at line 336 of file ptyx.h.

◆ FullWidth

#define FullWidth (   screen)    WhichVWin(screen)->fullwidth

Definition at line 3558 of file ptyx.h.

◆ GetCellColorBG

#define GetCellColorBG (   data)    ((data).bg)

Definition at line 1792 of file ptyx.h.

◆ GetCellColorFG

#define GetCellColorFG (   data)    ((data).fg)

Definition at line 1791 of file ptyx.h.

◆ GetLineDblCS

#define GetLineDblCS (   ld)    (((ld)->bufHead >> LINEFLAG_BITS) & DBLCS_MASK)

Definition at line 1566 of file ptyx.h.

◆ GetLineFlags

#define GetLineFlags (   ld)    ((ld)->bufHead & LINEFLAG_MASK)

Definition at line 1817 of file ptyx.h.

◆ GraphicsTermId

#define GraphicsTermId (   screen)    (screen)->terminal_id

Definition at line 2292 of file ptyx.h.

◆ GravityIsNorthWest

#define GravityIsNorthWest (   w)    ((w)->misc.resizeGravity == NorthWestGravity)

Definition at line 3097 of file ptyx.h.

◆ GravityIsSouthWest

#define GravityIsSouthWest (   w)    ((w)->misc.resizeGravity == SouthWestGravity)

Definition at line 3098 of file ptyx.h.

◆ HANDLE_STRUCT_NOTIFY

#define HANDLE_STRUCT_NOTIFY   1

Definition at line 3451 of file ptyx.h.

◆ hasDirectBG

#define hasDirectBG (   flags)    ((flags) & ATR_DIRECT_BG)

Definition at line 1794 of file ptyx.h.

◆ hasDirectFG

#define hasDirectFG (   flags)    ((flags) & ATR_DIRECT_FG)

Definition at line 1793 of file ptyx.h.

◆ Height

#define Height (   screen)    WhichVWin(screen)->height

Definition at line 3557 of file ptyx.h.

◆ HI_BYTE

#define HI_BYTE (   ch)    CharOf((ch) >> 8)

Definition at line 1668 of file ptyx.h.

◆ I_SIGNAL

#define I_SIGNAL   0x02

Definition at line 3656 of file ptyx.h.

◆ I_TEK

#define I_TEK   0x04

Definition at line 3657 of file ptyx.h.

◆ if_OPT_AIX_COLORS

#define if_OPT_AIX_COLORS (   screen,
  code 
)    if(screen->colorMode) code

Definition at line 1505 of file ptyx.h.

◆ if_OPT_DEC_CHRSET

#define if_OPT_DEC_CHRSET (   code)    code

Definition at line 1550 of file ptyx.h.

◆ if_OPT_DIRECT_COLOR

#define if_OPT_DIRECT_COLOR (   screen,
  code 
)    if (screen->direct_color) code

Definition at line 1517 of file ptyx.h.

◆ if_OPT_DIRECT_COLOR2

#define if_OPT_DIRECT_COLOR2 (   screen,
  test,
  code 
)    if (screen->direct_color && (test)) code

Definition at line 1518 of file ptyx.h.

◆ if_OPT_DIRECT_COLOR2_else

#define if_OPT_DIRECT_COLOR2_else (   cond,
  test,
  stmt 
)     if_OPT_DIRECT_COLOR2(cond, test, stmt else)

Definition at line 1524 of file ptyx.h.

◆ if_OPT_ISO_COLORS

#define if_OPT_ISO_COLORS (   screen,
  code 
)    if (screen->colorMode) code

Definition at line 1511 of file ptyx.h.

◆ if_OPT_VT52_MODE

#define if_OPT_VT52_MODE (   screen,
  code 
)    if(screen->vtXX_level == 0) code

Definition at line 1640 of file ptyx.h.

◆ if_OPT_WIDE_CHARS

#define if_OPT_WIDE_CHARS (   screen,
  code 
)    if(screen->wide_chars) code

Definition at line 1671 of file ptyx.h.

◆ if_OPT_XMC_GLITCH

#define if_OPT_XMC_GLITCH (   screen,
  code 
)    /* nothing */

Definition at line 1652 of file ptyx.h.

◆ if_PRINT_GRAPHICS2

#define if_PRINT_GRAPHICS2 (   statement)    /* nothing */

Definition at line 2320 of file ptyx.h.

◆ if_WIDE_OR_NARROW

#define if_WIDE_OR_NARROW (   screen,
  wide,
  narrow 
)    if(screen->wide_chars) wide else narrow

Definition at line 1672 of file ptyx.h.

◆ IN132COLUMNS

#define IN132COLUMNS   MiscBIT(7) /* true if in 132 column mode */

Definition at line 3395 of file ptyx.h.

◆ INSERT

#define INSERT   MiscBIT(5) /* true if in insert mode */

Definition at line 3393 of file ptyx.h.

◆ INVERSE

#define INVERSE   AttrBIT(0) /* invert the characters to be output */

Definition at line 3358 of file ptyx.h.

◆ INVISIBLE

#define INVISIBLE   MiscBIT(8) /* true if writing invisible text */

Definition at line 3396 of file ptyx.h.

◆ INWINDOW

#define INWINDOW   01 /* the mouse is in one of the windows */

Definition at line 2981 of file ptyx.h.

◆ INX2ROW

#define INX2ROW (   screen,
  inx 
)    ((inx) - (screen)->topline)

Definition at line 1904 of file ptyx.h.

◆ Ires

#define Ires (   name,
  class,
  offset,
  dftvalue 
)
Value:
{RES_NAME(name), RES_CLASS(class), XtRInt, sizeof(int), \
RES_OFFSET(offset), XtRImmediate, (XtPointer) dftvalue}

Definition at line 1711 of file ptyx.h.

◆ isCursorBar

#define isCursorBar (   s)    ((s)->cursor_shape == CURSOR_BAR)

Definition at line 2274 of file ptyx.h.

◆ isCursorBlock

#define isCursorBlock (   s)    ((s)->cursor_shape == CURSOR_BLOCK)

Definition at line 2272 of file ptyx.h.

◆ isCursorUnderline

#define isCursorUnderline (   s)    ((s)->cursor_shape == CURSOR_UNDERLINE)

Definition at line 2273 of file ptyx.h.

◆ IsEmpty

#define IsEmpty (   s)    ((s) == 0 || *(s) == '\0')

Definition at line 329 of file ptyx.h.

◆ IsIcon

#define IsIcon (   screen)    (False)

Definition at line 3525 of file ptyx.h.

◆ IsIconWin

#define IsIconWin (   screen,
  win 
)    (False)

Definition at line 3524 of file ptyx.h.

◆ ISO_PROTECT

#define ISO_PROTECT   2

Definition at line 3466 of file ptyx.h.

◆ isSameCColor

#define isSameCColor (   p,
 
)    (!memcmp(&(p), &(q), sizeof(CellColor)))

Definition at line 1761 of file ptyx.h.

◆ isSameCELL

#define isSameCELL (   a,
  b 
)    (isSameRow(a,b) && isSameCol(a,b))

Definition at line 356 of file ptyx.h.

◆ isSameCol

#define isSameCol (   a,
  b 
)    ((a)->col == (b)->col)

Definition at line 355 of file ptyx.h.

◆ isSameRow

#define isSameRow (   a,
  b 
)    ((a)->row == (b)->row)

Definition at line 354 of file ptyx.h.

◆ IsSpace

#define IsSpace (   c)    ((c) == ' ' || (c) == '\t' || (c) == '\r' || (c) == '\n')

Definition at line 330 of file ptyx.h.

◆ IsTekWidget

#define IsTekWidget (   w)    (XtClass(w) == tekWidgetClass)

Definition at line 3251 of file ptyx.h.

◆ IsTitleMode

#define IsTitleMode (   xw,
  mode 
)    (((xw)->screen.title_modes & mode) != 0)

Definition at line 1023 of file ptyx.h.

◆ IsXtermWidget

#define IsXtermWidget (   w)    (XtClass(w) == xtermWidgetClass)

Definition at line 3241 of file ptyx.h.

◆ KEYBOARD_TYPES

Definition at line 3056 of file ptyx.h.

◆ KNOWN_MISSING

#define KNOWN_MISSING   256

Definition at line 1926 of file ptyx.h.

◆ L_CURL

#define L_CURL   '{'

Definition at line 398 of file ptyx.h.

◆ LEFT_RIGHT

#define LEFT_RIGHT   MiscBIT(10) /* true if left/right margin mode */

Definition at line 3398 of file ptyx.h.

◆ LINEBLINKED

#define LINEBLINKED   AttrBIT(1)

Definition at line 3446 of file ptyx.h.

◆ LineCharSet

#define LineCharSet (   screen,
  ld 
)
Value:
? GetLineDblCS(ld) \
: (screen)->cur_chrset)
unsigned
Definition: graphics.c:647
#define GetLineDblCS(ld)
Definition: ptyx.h:1566
#define CSET_DOUBLE(code)
Definition: ptyx.h:1560

Definition at line 1569 of file ptyx.h.

◆ LineCursorX

#define LineCursorX (   screen,
  ld,
  col 
)
Value:
? CursorX(screen, 2*(col)) \
: CursorX(screen, (col)))
context col
#define CursorX(screen, col)
Definition: ptyx.h:3503

Definition at line 1577 of file ptyx.h.

◆ LINEFEED

#define LINEFEED   MiscBIT(3) /* true if in auto linefeed mode */

Definition at line 3391 of file ptyx.h.

◆ LINEFLAG_BITS

#define LINEFLAG_BITS   4

Definition at line 1814 of file ptyx.h.

◆ LINEFLAG_MASK

#define LINEFLAG_MASK   BITS2MASK(LINEFLAG_BITS)

Definition at line 1815 of file ptyx.h.

◆ LineFontWidth

#define LineFontWidth (   screen,
  ld 
)
Value:
? 2*FontWidth(screen) \
: FontWidth(screen))
#define FontWidth(screen)
Definition: ptyx.h:3560

Definition at line 1581 of file ptyx.h.

◆ LineMaxCol

#define LineMaxCol (   screen,
  ld 
)
Value:
? (screen->max_col / 2) \
: (screen->max_col))

Definition at line 1573 of file ptyx.h.

◆ LINEWRAPPED

#define LINEWRAPPED   AttrBIT(0)

Definition at line 3441 of file ptyx.h.

◆ LO_BYTE

#define LO_BYTE (   ch)    CharOf((ch) & 0xff)

Definition at line 1667 of file ptyx.h.

◆ MAX_CUT_BUFFER

#define MAX_CUT_BUFFER   8 /* CUT_BUFFER0 to CUT_BUFFER7 */

Definition at line 2816 of file ptyx.h.

◆ MAX_DECID

#define MAX_DECID   525 /* ...through VT525 */

Definition at line 402 of file ptyx.h.

◆ MAX_EWMH_DATA

#define MAX_EWMH_DATA   (1 + OPT_TEK4014)

Definition at line 3206 of file ptyx.h.

◆ MAX_EWMH_MODE

#define MAX_EWMH_MODE   3

Definition at line 3205 of file ptyx.h.

◆ MAX_I_DELAY

#define MAX_I_DELAY   32767 /* time-delay in ReGIS */

Definition at line 413 of file ptyx.h.

◆ MAX_I_PARAM

#define MAX_I_PARAM   65535 /* parameters */

Definition at line 412 of file ptyx.h.

◆ MAX_POINTER

#define MAX_POINTER   (XC_num_glyphs/2)

Definition at line 3191 of file ptyx.h.

◆ MAX_SAVED_SGR

#define MAX_SAVED_SGR   10

Definition at line 3275 of file ptyx.h.

◆ MAX_SELECTIONS

#define MAX_SELECTIONS   (MAX_SELECTION_CODES + MAX_CUT_BUFFER)

Definition at line 2817 of file ptyx.h.

◆ MAX_TABS

#define MAX_TABS   (TAB_BITS_WIDTH * TAB_ARRAY_SIZE)

Definition at line 3268 of file ptyx.h.

◆ MAX_U_COLOR

#define MAX_U_COLOR   65535u /* colors */

Definition at line 414 of file ptyx.h.

◆ MAX_U_COORD

#define MAX_U_COORD   32767u /* coordinates */

Definition at line 415 of file ptyx.h.

◆ MAX_U_STRING

#define MAX_U_STRING   65535u /* string-length */

Definition at line 416 of file ptyx.h.

◆ MAX_UDK

#define MAX_UDK   35

Definition at line 3185 of file ptyx.h.

◆ MAX_XFT_FONTS

#define MAX_XFT_FONTS   1

Definition at line 425 of file ptyx.h.

◆ MAX_XLFD_FONTS

#define MAX_XLFD_FONTS   1

Definition at line 424 of file ptyx.h.

◆ MAXCOLORS

#define MAXCOLORS   (NUM_ANSI_COLORS+5)

Definition at line 1465 of file ptyx.h.

◆ MaxCols

#define MaxCols (   screen)    ((screen)->max_col + 1)

Definition at line 313 of file ptyx.h.

◆ MAXPTTYS

#define MAXPTTYS   2048

Definition at line 296 of file ptyx.h.

◆ MaxRows

#define MaxRows (   screen)    ((screen)->max_row + 1)

Definition at line 314 of file ptyx.h.

◆ MenuFontName

#define MenuFontName (   n)    menu_font_names[n][fNorm]

Definition at line 2870 of file ptyx.h.

◆ MIN_ANSI_COLORS

#define MIN_ANSI_COLORS   16

Definition at line 1440 of file ptyx.h.

◆ MIN_DECID

#define MIN_DECID   52 /* can emulate VT52 */

Definition at line 401 of file ptyx.h.

◆ MiscBIT

#define MiscBIT (   n)    xBIT(n + 16) /* miscellaneous state flags */

Definition at line 3355 of file ptyx.h.

◆ MODE_DECBKM

#define MODE_DECBKM   xBIT(4) /* private mode 67: backarrow */

Definition at line 3260 of file ptyx.h.

◆ MODE_DECCKM

#define MODE_DECCKM   xBIT(2) /* private mode 1: cursor keys */

Definition at line 3258 of file ptyx.h.

◆ MODE_DECKPAM

#define MODE_DECKPAM   xBIT(1) /* keypad application mode */

Definition at line 3257 of file ptyx.h.

◆ MODE_DECSDM

#define MODE_DECSDM   xBIT(5) /* private mode 80: sixel scrolling mode */

Definition at line 3261 of file ptyx.h.

◆ MODE_KAM

#define MODE_KAM   xBIT(0) /* mode 2: keyboard action mode */

Definition at line 3256 of file ptyx.h.

◆ MODE_SRM

#define MODE_SRM   xBIT(3) /* mode 12: send-receive mode */

Definition at line 3259 of file ptyx.h.

◆ MULTICLICKTIME

#define MULTICLICKTIME   250 /* milliseconds */

Definition at line 2984 of file ptyx.h.

◆ MyStackAlloc

#define MyStackAlloc (   size,
  stack_cache_array 
)
Value:
((size) <= sizeof(stack_cache_array) \
? (XtPointer)(stack_cache_array) \
: (XtPointer)malloc((size_t)(size)))

Definition at line 93 of file ptyx.h.

◆ MyStackFree

#define MyStackFree (   pointer,
  stack_cache_array 
)     if ((pointer) != ((char *)(stack_cache_array))) free(pointer)

Definition at line 98 of file ptyx.h.

◆ N_MARGINBELL

#define N_MARGINBELL   10

Definition at line 3263 of file ptyx.h.

◆ NAME_HP_KT

#define NAME_HP_KT   /*nothing*/

Definition at line 3029 of file ptyx.h.

◆ NAME_OLD_KT

#define NAME_OLD_KT   " legacy"

Definition at line 3024 of file ptyx.h.

◆ NAME_SCO_KT

#define NAME_SCO_KT   /*nothing*/

Definition at line 3035 of file ptyx.h.

◆ NAME_SUN_KT

#define NAME_SUN_KT   " sun"

Definition at line 3039 of file ptyx.h.

◆ NAME_TCAP_KT

#define NAME_TCAP_KT   " tcap"

Definition at line 3051 of file ptyx.h.

◆ NAME_VT220_KT

#define NAME_VT220_KT   " vt220"

Definition at line 3045 of file ptyx.h.

◆ NARROW_ICHAR

#define NARROW_ICHAR   0xffff

Definition at line 1673 of file ptyx.h.

◆ NATIONAL

#define NATIONAL   MiscBIT(9) /* true if writing national charset */

Definition at line 3397 of file ptyx.h.

◆ NBOX

#define NBOX   5 /* Number of Points in box */

Definition at line 428 of file ptyx.h.

◆ NMENUFONTS

#define NMENUFONTS   10 /* font entries in fontMenu */

Definition at line 426 of file ptyx.h.

◆ NO_ACTIVE_ICON

#define NO_ACTIVE_ICON   1 /* Note: code relies on an X11R6 function */

Definition at line 503 of file ptyx.h.

◆ NO_COLOR

#define NO_COLOR   ((unsigned)-1)

Definition at line 1778 of file ptyx.h.

◆ NOBACKGROUND

#define NOBACKGROUND   DrawBIT(0) /* Used for overstrike */

Definition at line 3403 of file ptyx.h.

◆ NOCLEAR_COLM

#define NOCLEAR_COLM   MiscBIT(11) /* true if no clear on DECCOLM change */

Definition at line 3399 of file ptyx.h.

◆ NonLatin1

#define NonLatin1 (   c)
Value:
(((c) != ANSI_LF) && \
((c) != ANSI_HT) && \
(((c) < ANSI_SPA) || \
((c) >= ANSI_DEL && (c) <= ANSI_APC)))
double c
Definition: graphics.c:1088
#define ANSI_HT
Definition: ptyx.h:366
#define ANSI_APC
Definition: ptyx.h:389
#define ANSI_LF
Definition: ptyx.h:367
#define ANSI_SPA
Definition: ptyx.h:378
#define ANSI_DEL
Definition: ptyx.h:380

Definition at line 392 of file ptyx.h.

◆ NORESOLUTION

#define NORESOLUTION   DrawBIT(5) /* find the font without resolution */

Definition at line 3410 of file ptyx.h.

◆ NormalBoldGC

#define NormalBoldGC (   w,
  sp 
)    getCgsGC(w, WhichVWin(sp), gcBold)

Definition at line 3584 of file ptyx.h.

◆ NormalFont

#define NormalFont (   screen)    WhichVFont(screen, fNorm)

Definition at line 3563 of file ptyx.h.

◆ NormalGC

#define NormalGC (   w,
  sp 
)    getCgsGC(w, WhichVWin(sp), gcNorm)

Definition at line 3582 of file ptyx.h.

◆ NormalWFont

#define NormalWFont (   screen)    WhichVFont(screen, fWide)

Definition at line 3567 of file ptyx.h.

◆ NOTRANSLATION

#define NOTRANSLATION   DrawBIT(1) /* No scan for chars missing in font */

Definition at line 3404 of file ptyx.h.

◆ NPARAM

#define NPARAM   30 /* Max. parameters */

Definition at line 429 of file ptyx.h.

◆ nrc_ampersand

#define nrc_ampersand   300

Definition at line 1032 of file ptyx.h.

◆ nrc_dquote

#define nrc_dquote   200

Definition at line 1031 of file ptyx.h.

◆ nrc_percent

#define nrc_percent   100

Definition at line 1030 of file ptyx.h.

◆ NUM_ANSI_COLORS

#define NUM_ANSI_COLORS   256

Definition at line 1443 of file ptyx.h.

◆ NUM_CHRSET

#define NUM_CHRSET   8 /* normal/bold and 4 CSET_xxx values */

Definition at line 1556 of file ptyx.h.

◆ NUM_GSETS

#define NUM_GSETS   4

Definition at line 2140 of file ptyx.h.

◆ NUM_POPUP_MENUS

#define NUM_POPUP_MENUS   4

Definition at line 2097 of file ptyx.h.

◆ OFF

#define OFF   0

Definition at line 3646 of file ptyx.h.

◆ OFF_PROTECT

#define OFF_PROTECT   0

Definition at line 3464 of file ptyx.h.

◆ okFont

#define okFont (   font)    ((font) != 0 && (font)->fid != 0)

Definition at line 3535 of file ptyx.h.

◆ okIndexedColor

#define okIndexedColor (   n)    ((n) >= 0 && (n) < NUM_ANSI_COLORS)

Definition at line 1450 of file ptyx.h.

◆ okScrnRow

#define okScrnRow (   screen,
  row 
)
Value:
((row) <= ((screen)->max_row - (screen)->topline) \
&& (row) >= -((screen)->savedlines))
context row

Definition at line 1912 of file ptyx.h.

◆ OkTAB

#define OkTAB (   c)    ((c) >= 0 && (c) < MAX_TABS)

Definition at line 3270 of file ptyx.h.

◆ ON

#define ON   1

Definition at line 3647 of file ptyx.h.

◆ OnlyLatin1

#define OnlyLatin1 (   c)    (NonLatin1(c) ? BAD_ASCII : (c))

Definition at line 396 of file ptyx.h.

◆ OPT_256_COLORS

#define OPT_256_COLORS   1 /* true if xterm is configured with 256 colors */

Definition at line 660 of file ptyx.h.

◆ OPT_88_COLORS [1/2]

#define OPT_88_COLORS   1 /* true if xterm is configured with 88 colors */

Definition at line 905 of file ptyx.h.

◆ OPT_88_COLORS [2/2]

#define OPT_88_COLORS   0

Definition at line 905 of file ptyx.h.

◆ OPT_AIX_COLORS

#define OPT_AIX_COLORS   1 /* true if xterm is configured with AIX (16) colors */

Definition at line 508 of file ptyx.h.

◆ OPT_ALLOW_XXX_OPS

#define OPT_ALLOW_XXX_OPS   1 /* true if xterm adds "Allow XXX Ops" submenu */

Definition at line 512 of file ptyx.h.

◆ OPT_BLINK_CURS

#define OPT_BLINK_CURS   1 /* true if xterm has blinking cursor capability */

Definition at line 516 of file ptyx.h.

◆ OPT_BLINK_TEXT

#define OPT_BLINK_TEXT   OPT_BLINK_CURS /* true if xterm has blinking text capability */

Definition at line 520 of file ptyx.h.

◆ OPT_BOX_CHARS

#define OPT_BOX_CHARS   1 /* true if xterm can simulate box-characters */

Definition at line 524 of file ptyx.h.

◆ OPT_BROKEN_OSC

#define OPT_BROKEN_OSC   0 /* true if xterm allows Linux's broken OSC parsing */

Definition at line 535 of file ptyx.h.

◆ OPT_BROKEN_ST

#define OPT_BROKEN_ST   1 /* true if xterm allows old/broken OSC parsing */

Definition at line 540 of file ptyx.h.

◆ OPT_BUILTIN_XPMS

#define OPT_BUILTIN_XPMS   0 /* true if all xpm data is compiled-in */

Definition at line 528 of file ptyx.h.

◆ OPT_C1_PRINT

#define OPT_C1_PRINT   1 /* true if xterm allows C1 controls to be printable */

Definition at line 544 of file ptyx.h.

◆ OPT_CLIP_BOLD

#define OPT_CLIP_BOLD   1 /* true if xterm uses clipping to avoid bold-trash */

Definition at line 548 of file ptyx.h.

◆ OPT_COLOR_CLASS

#define OPT_COLOR_CLASS   1 /* true if xterm uses separate color-resource classes */

Definition at line 552 of file ptyx.h.

◆ OPT_COLOR_RES

#define OPT_COLOR_RES   1 /* true if xterm delays color-resource evaluation */

Definition at line 556 of file ptyx.h.

◆ OPT_COLOR_RES2

#define OPT_COLOR_RES2   1

Definition at line 873 of file ptyx.h.

◆ OPT_DABBREV

#define OPT_DABBREV   0 /* dynamic abbreviations */

Definition at line 560 of file ptyx.h.

◆ OPT_DEC_CHRSET

#define OPT_DEC_CHRSET   1 /* true if xterm is configured for DEC charset */

Definition at line 564 of file ptyx.h.

◆ OPT_DEC_LOCATOR

#define OPT_DEC_LOCATOR   0 /* true if xterm supports VT220-style mouse events */

Definition at line 568 of file ptyx.h.

◆ OPT_DEC_RECTOPS

#define OPT_DEC_RECTOPS   1 /* true if xterm is configured for VT420 rectangles */

Definition at line 572 of file ptyx.h.

◆ OPT_DEC_SOFTFONT

#define OPT_DEC_SOFTFONT   0 /* true if xterm is configured for VT220 softfonts */

Definition at line 596 of file ptyx.h.

◆ OPT_DIRECT_COLOR

#define OPT_DIRECT_COLOR   OPT_ISO_COLORS /* true if xterm is configured with direct-colors */

Definition at line 656 of file ptyx.h.

◆ OPT_DOUBLE_BUFFER

#define OPT_DOUBLE_BUFFER   0 /* true if using double-buffering */

Definition at line 600 of file ptyx.h.

◆ OPT_EBCDIC

#define OPT_EBCDIC   0

Definition at line 607 of file ptyx.h.

◆ OPT_EXEC_XTERM

#define OPT_EXEC_XTERM   0 /* true if xterm can fork/exec copies of itself */

Definition at line 612 of file ptyx.h.

◆ OPT_EXT_COLORS

#define OPT_EXT_COLORS   1

Definition at line 1453 of file ptyx.h.

◆ OPT_EXTRA_PASTE

#define OPT_EXTRA_PASTE   1

Definition at line 616 of file ptyx.h.

◆ OPT_FIFO_LINES

#define OPT_FIFO_LINES   1 /* optimize save-lines feature using FIFO */

Definition at line 620 of file ptyx.h.

◆ OPT_FOCUS_EVENT

#define OPT_FOCUS_EVENT   1 /* focus in/out events */

Definition at line 624 of file ptyx.h.

◆ OPT_GRAPHICS

#define OPT_GRAPHICS   0 /* true if xterm is configured for any type of graphics */

Definition at line 592 of file ptyx.h.

◆ OPT_HIGHLIGHT_COLOR

#define OPT_HIGHLIGHT_COLOR   1 /* true if xterm supports color highlighting */

Definition at line 668 of file ptyx.h.

◆ OPT_HP_FUNC_KEYS

#define OPT_HP_FUNC_KEYS   0 /* true if xterm supports HP-style function keys */

Definition at line 628 of file ptyx.h.

◆ OPT_I18N_SUPPORT

#define OPT_I18N_SUPPORT   0

Definition at line 635 of file ptyx.h.

◆ OPT_INITIAL_ERASE

#define OPT_INITIAL_ERASE   1 /* use pty's erase character if it's not 128 */

Definition at line 640 of file ptyx.h.

◆ OPT_INPUT_METHOD

#define OPT_INPUT_METHOD   0

Definition at line 647 of file ptyx.h.

◆ OPT_ISO_COLORS

#define OPT_ISO_COLORS   1 /* true if xterm is configured with ISO colors */

Definition at line 652 of file ptyx.h.

◆ OPT_LOAD_VTFONTS

#define OPT_LOAD_VTFONTS   0 /* true if xterm has load-vt-fonts() action */

Definition at line 672 of file ptyx.h.

◆ OPT_LUIT_PROG

#define OPT_LUIT_PROG   1 /* true if xterm supports luit */

Definition at line 676 of file ptyx.h.

◆ OPT_MAXIMIZE

#define OPT_MAXIMIZE   1 /* add actions for iconify ... maximize */

Definition at line 680 of file ptyx.h.

◆ OPT_MINI_LUIT

#define OPT_MINI_LUIT   0 /* true if xterm supports built-in mini-luit */

Definition at line 684 of file ptyx.h.

◆ OPT_MOD_FKEYS

#define OPT_MOD_FKEYS   1 /* modify cursor- and function-keys in normal mode */

Definition at line 688 of file ptyx.h.

◆ OPT_NUM_LOCK

#define OPT_NUM_LOCK   1 /* use NumLock key only for numeric-keypad */

Definition at line 692 of file ptyx.h.

◆ OPT_PASTE64

#define OPT_PASTE64   1 /* program control of select/paste via base64 */

Definition at line 696 of file ptyx.h.

◆ OPT_PC_COLORS

#define OPT_PC_COLORS   1 /* true if xterm supports PC-style (bold) colors */

Definition at line 700 of file ptyx.h.

◆ OPT_PRINT_COLORS

#define OPT_PRINT_COLORS   1 /* true if we print color information */

Definition at line 712 of file ptyx.h.

◆ OPT_PRINT_GRAPHICS

#define OPT_PRINT_GRAPHICS   0 /* true if xterm supports screen dumps as sixel graphics */

Definition at line 580 of file ptyx.h.

◆ OPT_PRINT_ON_EXIT

#define OPT_PRINT_ON_EXIT   1 /* true allows xterm to dump screen on X error */

Definition at line 704 of file ptyx.h.

◆ OPT_PTY_HANDSHAKE

#define OPT_PTY_HANDSHAKE   USE_HANDSHAKE /* avoid pty races on older systems */

Definition at line 708 of file ptyx.h.

◆ OPT_READLINE

#define OPT_READLINE   0 /* mouse-click/paste support for readline */

Definition at line 716 of file ptyx.h.

◆ OPT_REGIS_GRAPHICS

#define OPT_REGIS_GRAPHICS   0 /* true if xterm supports VT125/VT240/VT330 ReGIS graphics */

Definition at line 588 of file ptyx.h.

◆ OPT_RENDERFONT

#define OPT_RENDERFONT   0

Definition at line 723 of file ptyx.h.

◆ OPT_RENDERWIDE

#define OPT_RENDERWIDE   0

Definition at line 731 of file ptyx.h.

◆ OPT_REPORT_CCLASS

#define OPT_REPORT_CCLASS   1 /* provide "-report-charclass" option */

Definition at line 736 of file ptyx.h.

◆ OPT_REPORT_COLORS

#define OPT_REPORT_COLORS   1 /* provide "-report-colors" option */

Definition at line 740 of file ptyx.h.

◆ OPT_REPORT_FONTS

#define OPT_REPORT_FONTS   1 /* provide "-report-fonts" option */

Definition at line 744 of file ptyx.h.

◆ OPT_REPORT_ICONS

#define OPT_REPORT_ICONS   1 /* provide "-report-icons" option */

Definition at line 748 of file ptyx.h.

◆ OPT_SAME_NAME

#define OPT_SAME_NAME   1 /* suppress redundant updates of title, icon, etc. */

Definition at line 752 of file ptyx.h.

◆ OPT_SAVE_LINES

#define OPT_SAVE_LINES   OPT_FIFO_LINES /* optimize save-lines feature */

Definition at line 756 of file ptyx.h.

◆ OPT_SCO_FUNC_KEYS

#define OPT_SCO_FUNC_KEYS   0 /* true if xterm supports SCO-style function keys */

Definition at line 760 of file ptyx.h.

◆ OPT_SCREEN_DUMPS

#define OPT_SCREEN_DUMPS   1 /* true if xterm supports screen dumps */

Definition at line 584 of file ptyx.h.

◆ OPT_SCROLL_LOCK

#define OPT_SCROLL_LOCK   1 /* true if xterm interprets fontsize-shifting */

Definition at line 768 of file ptyx.h.

◆ OPT_SELECT_REGEX

#define OPT_SELECT_REGEX   1 /* true if xterm supports regular-expression selects */

Definition at line 772 of file ptyx.h.

◆ OPT_SELECTION_OPS

#define OPT_SELECTION_OPS   1 /* true if xterm supports operations on selection */

Definition at line 776 of file ptyx.h.

◆ OPT_SESSION_MGT

#define OPT_SESSION_MGT   0

Definition at line 783 of file ptyx.h.

◆ OPT_SHIFT_FONTS

#define OPT_SHIFT_FONTS   1 /* true if xterm interprets fontsize-shifting */

Definition at line 788 of file ptyx.h.

◆ OPT_SIXEL_GRAPHICS

#define OPT_SIXEL_GRAPHICS   0 /* true if xterm supports VT240-style sixel graphics */

Definition at line 576 of file ptyx.h.

◆ OPT_SUN_FUNC_KEYS

#define OPT_SUN_FUNC_KEYS   1 /* true if xterm supports Sun-style function keys */

Definition at line 764 of file ptyx.h.

◆ OPT_SUNPC_KBD

#define OPT_SUNPC_KBD   1 /* true if xterm supports Sun/PC keyboard map */

Definition at line 792 of file ptyx.h.

◆ OPT_TCAP_FKEYS

#define OPT_TCAP_FKEYS   1 /* true for termcap function-keys */

Definition at line 796 of file ptyx.h.

◆ OPT_TCAP_QUERY

#define OPT_TCAP_QUERY   1 /* true for termcap query */

Definition at line 800 of file ptyx.h.

◆ OPT_TEK4014

#define OPT_TEK4014   1 /* true if we're using tek4014 emulation */

Definition at line 804 of file ptyx.h.

◆ OPT_TOOLBAR

#define OPT_TOOLBAR   0 /* true if xterm supports toolbar menus */

Definition at line 808 of file ptyx.h.

◆ OPT_TRACE

#define OPT_TRACE   0 /* true if we're using debugging traces */

Definition at line 812 of file ptyx.h.

◆ OPT_TRACE_FLAGS

#define OPT_TRACE_FLAGS   0 /* additional tracing used for SCRN_BUF_FLAGS */

Definition at line 816 of file ptyx.h.

◆ OPT_TRACE_UNIQUE

#define OPT_TRACE_UNIQUE   0 /* true if we're using multiple trace files */

Definition at line 820 of file ptyx.h.

◆ OPT_VT52_MODE

#define OPT_VT52_MODE   1 /* true if xterm supports VT52 emulation */

Definition at line 824 of file ptyx.h.

◆ OPT_WIDE_ATTRS

#define OPT_WIDE_ATTRS   1 /* true if xterm supports 16-bit attributes */

Definition at line 828 of file ptyx.h.

◆ OPT_WIDE_CHARS

#define OPT_WIDE_CHARS   1 /* true if xterm supports 16-bit characters */

Definition at line 832 of file ptyx.h.

◆ OPT_WIDER_ICHAR

#define OPT_WIDER_ICHAR   1 /* true if xterm uses 32-bits for wide-chars */

Definition at line 836 of file ptyx.h.

◆ OPT_XMC_GLITCH

#define OPT_XMC_GLITCH   0 /* true if xterm supports xmc (magic cookie glitch) */

Definition at line 840 of file ptyx.h.

◆ OPT_XRES_QUERY

#define OPT_XRES_QUERY   1 /* true for resource query */

Definition at line 844 of file ptyx.h.

◆ OPT_XTERM_SGR

#define OPT_XTERM_SGR   1 /* true if xterm supports private SGR controls */

Definition at line 848 of file ptyx.h.

◆ OPT_ZICONBEEP

#define OPT_ZICONBEEP   1 /* true if xterm supports "-ziconbeep" option */

Definition at line 852 of file ptyx.h.

◆ optRegisGraphics

#define optRegisGraphics (   screen)    False

Definition at line 2303 of file ptyx.h.

◆ optSixelGraphics

#define optSixelGraphics (   screen)    False

Definition at line 2314 of file ptyx.h.

◆ ORIGIN

#define ORIGIN   MiscBIT(4) /* true if in origin mode */

Definition at line 3392 of file ptyx.h.

◆ OriginX

#define OriginX (   screen)    (ScrollbarWidth(screen) + screen->border)

Definition at line 3492 of file ptyx.h.

◆ OriginY

#define OriginY (   screen)    (screen->border)

Definition at line 3495 of file ptyx.h.

◆ PartS2L

#define PartS2L (   s,
 
)    (isdigit(CharOf(*(s))) && (d) != (s) && (d) != 0)

Definition at line 337 of file ptyx.h.

◆ PrinterOf

#define PrinterOf (   screen)    (screen)->printer_state

Definition at line 3487 of file ptyx.h.

◆ PROTECTED

#define PROTECTED   AttrBIT(6) /* a character that cannot be erased */

Definition at line 3367 of file ptyx.h.

◆ PTYCHAR1

#define PTYCHAR1   "pqrstuvwxyzPQRSTUVWXYZ"

Definition at line 246 of file ptyx.h.

◆ PTYCHAR2

#define PTYCHAR2   "0123456789abcdef"

Definition at line 257 of file ptyx.h.

◆ PTYCHARLEN

#define PTYCHARLEN   2

Definition at line 288 of file ptyx.h.

◆ PTYDEV

#define PTYDEV   "/dev/ptyxx"

Definition at line 226 of file ptyx.h.

◆ PTYFORMAT

#define PTYFORMAT   "/dev/ptyp%d"

Definition at line 278 of file ptyx.h.

◆ R_CURL

#define R_CURL   '}'

Definition at line 399 of file ptyx.h.

◆ RES_CLASS

#define RES_CLASS (   name)    name

Definition at line 1694 of file ptyx.h.

◆ RES_NAME

#define RES_NAME (   name)    name

Definition at line 1693 of file ptyx.h.

◆ RES_OFFSET

#define RES_OFFSET (   offset)    XtOffsetOf(XtermWidgetRec, offset)

Definition at line 1690 of file ptyx.h.

◆ ResetWrap

#define ResetWrap (   screen)
Value:
(screen)->do_wrap = \
(screen)->char_was_written = False

Definition at line 2972 of file ptyx.h.

◆ REVERSE_VIDEO

#define REVERSE_VIDEO   MiscBIT(2) /* true if screen white on black */

Definition at line 3390 of file ptyx.h.

◆ ReverseBoldGC

#define ReverseBoldGC (   w,
  sp 
)    getCgsGC(w, WhichVWin(sp), gcBoldReverse)

Definition at line 3585 of file ptyx.h.

◆ ReverseGC

#define ReverseGC (   w,
  sp 
)    getCgsGC(w, WhichVWin(sp), gcNormReverse)

Definition at line 3583 of file ptyx.h.

◆ ReverseOrHilite

#define ReverseOrHilite (   screen,
  flags,
  hilite 
)
Value:
(( screen->colorRVMode && hilite ) || \
( !screen->colorRVMode && \
(( (flags & INVERSE) && !hilite) || \
(!(flags & INVERSE) && hilite)) ))
#define INVERSE
Definition: ptyx.h:3358

Definition at line 1476 of file ptyx.h.

◆ REVERSEWRAP

#define REVERSEWRAP   MiscBIT(1) /* true if reverse wraparound mode */

Definition at line 3389 of file ptyx.h.

◆ ROW2INX

#define ROW2INX (   screen,
  row 
)    ((row) + (screen)->topline)

Definition at line 1903 of file ptyx.h.

◆ SAVED_CURSORS

#define SAVED_CURSORS   2

Definition at line 2166 of file ptyx.h.

◆ ScaleShift

#define ScaleShift (   screen)
Value:
(int) ((IsIcon(screen) || (screen->scale_height <= 1.0f)) \
? 0.0f \
: ((float) WhichVWin(screen)->f_height \
* ((float) screen->scale_height - 1.0f) / 2.0f))
#define WhichVWin(screen)
Definition: ptyx.h:3526
#define IsIcon(screen)
Definition: ptyx.h:3525

Definition at line 3574 of file ptyx.h.

◆ SCREEN_FLAG

#define SCREEN_FLAG (   screenp,
 
)    (1&(screenp)->f)

Definition at line 2956 of file ptyx.h.

◆ SCREEN_FLAG_restore

#define SCREEN_FLAG_restore (   screenp,
 
)    ((screenp)->f = (((screenp)->f)>>1))

Definition at line 2961 of file ptyx.h.

◆ SCREEN_FLAG_save

#define SCREEN_FLAG_save (   screenp,
 
)     ((screenp)->f = (((screenp)->f)<<1) | SCREEN_FLAG(screenp,f))

Definition at line 2959 of file ptyx.h.

◆ SCREEN_FLAG_set

#define SCREEN_FLAG_set (   screenp,
 
)    ((screenp)->f |= 1)

Definition at line 2957 of file ptyx.h.

◆ SCREEN_FLAG_unset

#define SCREEN_FLAG_unset (   screenp,
 
)    ((screenp)->f &= (unsigned) ~1L)

Definition at line 2958 of file ptyx.h.

◆ ScrollbarWidth

#define ScrollbarWidth (   screen)    WhichVWin(screen)->sb_info.width

Definition at line 3571 of file ptyx.h.

◆ SelectFontName

#define SelectFontName ( )    MenuFontName(fontMenu_fontsel)

Definition at line 2872 of file ptyx.h.

◆ SET_COLOR_NAME

#define SET_COLOR_NAME (   s,
  w,
 
)    (((s)->names[w] = (v)), ((s)->which |= (unsigned) (1<<(w))))

Definition at line 1411 of file ptyx.h.

◆ SET_COLOR_VALUE

#define SET_COLOR_VALUE (   s,
  w,
 
)    (((s)->colors[w] = (v)), UIntSet((s)->which, (1<<(w))))

Definition at line 1408 of file ptyx.h.

◆ setDirectBG

#define setDirectBG (   flags,
  test 
)    if (test) UIntSet(flags, ATR_DIRECT_BG); else UIntClr(flags, ATR_DIRECT_BG)

Definition at line 1796 of file ptyx.h.

◆ setDirectFG

#define setDirectFG (   flags,
  test 
)    if (test) UIntSet(flags, ATR_DIRECT_FG); else UIntClr(flags, ATR_DIRECT_FG)

Definition at line 1795 of file ptyx.h.

◆ SetLineDblCS

#define SetLineDblCS (   ld,
  cs 
)    (ld)->bufHead = (RowData) ((ld->bufHead & LINEFLAG_MASK) | (cs << LINEFLAG_BITS))

Definition at line 1567 of file ptyx.h.

◆ SetLineFlags

#define SetLineFlags (   ld,
  xx 
)    (ld)->bufHead = (RowData) ((ld->bufHead & (DBLCS_MASK << LINEFLAG_BITS)) | (xx & LINEFLAG_MASK))

Definition at line 1820 of file ptyx.h.

◆ SGR_MASK

#define SGR_MASK   (BOLD | BLINK | UNDERLINE | INVERSE)

Definition at line 3417 of file ptyx.h.

◆ SGR_MASK2

Definition at line 3380 of file ptyx.h.

◆ SHELL_OF

#define SHELL_OF (   widget)    XtParent(widget)

Definition at line 1634 of file ptyx.h.

◆ SizeOfCellData

#define SizeOfCellData   offsetof(CellData, combData)

Definition at line 1897 of file ptyx.h.

◆ SizeOfLineData

#define SizeOfLineData   offsetof(LineData, combData)

Definition at line 1896 of file ptyx.h.

◆ SMOOTHSCROLL

#define SMOOTHSCROLL   MiscBIT(6) /* true if in smooth scroll mode */

Definition at line 3394 of file ptyx.h.

◆ SpecialWindowOps

#define SpecialWindowOps (   w,
  name 
)    (!TScreenOf(w)->disallow_win_ops[name])

Definition at line 3618 of file ptyx.h.

◆ Sres

#define Sres (   name,
  class,
  offset,
  dftvalue 
)
Value:
{RES_NAME(name), RES_CLASS(class), XtRString, sizeof(char *), \
RES_OFFSET(offset), XtRString, DECONST(char,dftvalue)}

Definition at line 1719 of file ptyx.h.

◆ TAB_ARRAY_SIZE

#define TAB_ARRAY_SIZE   (1024 / TAB_BITS_WIDTH)

Definition at line 3267 of file ptyx.h.

◆ TAB_BITS_SHIFT

#define TAB_BITS_SHIFT   5 /* FIXME: 2**5 == 32 (should derive) */

Definition at line 3265 of file ptyx.h.

◆ TAB_BITS_WIDTH

#define TAB_BITS_WIDTH   (1 << TAB_BITS_SHIFT)

Definition at line 3266 of file ptyx.h.

◆ TDefaultCols

#define TDefaultCols   75

Definition at line 3595 of file ptyx.h.

◆ TDefaultRows

#define TDefaultRows   37

Definition at line 3594 of file ptyx.h.

◆ TEK4014_ACTIVE

#define TEK4014_ACTIVE (   xw)    ((xw)->misc.TekEmu)

Definition at line 1618 of file ptyx.h.

◆ TEK4014_SHOWN

#define TEK4014_SHOWN (   xw)    ((xw)->misc.Tshow)

Definition at line 1619 of file ptyx.h.

◆ TEK_FONT_2

#define TEK_FONT_2   1

Definition at line 458 of file ptyx.h.

◆ TEK_FONT_3

#define TEK_FONT_3   2

Definition at line 459 of file ptyx.h.

◆ TEK_FONT_LARGE

#define TEK_FONT_LARGE   0

Definition at line 457 of file ptyx.h.

◆ TEK_FONT_SMALL

#define TEK_FONT_SMALL   3

Definition at line 460 of file ptyx.h.

◆ TEK_LINK_BLOCK_SIZE

#define TEK_LINK_BLOCK_SIZE   1024

Definition at line 3632 of file ptyx.h.

◆ TEKNUMFONTS

#define TEKNUMFONTS   4

Definition at line 461 of file ptyx.h.

◆ TEKNUMLINES

#define TEKNUMLINES   4

Definition at line 464 of file ptyx.h.

◆ TekScale

#define TekScale (   screen)    WhichTWin(screen)->tekscale

Definition at line 3591 of file ptyx.h.

◆ TekScreenOf

#define TekScreenOf (   tw)    (&(tw)->screen)

Definition at line 3485 of file ptyx.h.

◆ TERM_COLOR_FLAGS

#define TERM_COLOR_FLAGS (   xw)    ((xw)->flags & COLOR_FLAGS)

Definition at line 1423 of file ptyx.h.

◆ TERMCAP_SIZE

#define TERMCAP_SIZE   1500 /* 1023 is standard; 'screen' exceeds */

Definition at line 422 of file ptyx.h.

◆ TFullHeight

#define TFullHeight (   screen)    WhichTWin(screen)->fullheight

Definition at line 3590 of file ptyx.h.

◆ TFullWidth

#define TFullWidth (   screen)    WhichTWin(screen)->fullwidth

Definition at line 3589 of file ptyx.h.

◆ THeight

#define THeight (   screen)    WhichTWin(screen)->height

Definition at line 3588 of file ptyx.h.

◆ TOGGLE

#define TOGGLE   1

Definition at line 3650 of file ptyx.h.

◆ ToolbarHeight

#define ToolbarHeight (   w)    0

Definition at line 3628 of file ptyx.h.

◆ TRACE_RC

#define TRACE_RC (   code,
  func 
)    func

Definition at line 3061 of file ptyx.h.

◆ Tres

#define Tres (   name,
  class,
  offset,
  dftvalue 
)     COLOR_RES2(name, class, screen.Tcolors[offset], dftvalue) \

Definition at line 1704 of file ptyx.h.

◆ TScreenOf

#define TScreenOf (   xw)    (&(xw)->screen)

Definition at line 3484 of file ptyx.h.

◆ TShellWindow

#define TShellWindow   XtWindow(SHELL_OF(tekWidget))

Definition at line 3548 of file ptyx.h.

◆ TTYDEV

#define TTYDEV   "/dev/ttyxx"

Definition at line 238 of file ptyx.h.

◆ TTYFORMAT

#define TTYFORMAT   "/dev/ttyp%d"

Definition at line 268 of file ptyx.h.

◆ TWidth

#define TWidth (   screen)    WhichTWin(screen)->width

Definition at line 3587 of file ptyx.h.

◆ TWindow

#define TWindow (   screen)    WhichTWin(screen)->window

Definition at line 3547 of file ptyx.h.

◆ TypeCalloc

#define TypeCalloc (   type)    TypeCallocN(type, 1)

Definition at line 103 of file ptyx.h.

◆ TypeCallocN

#define TypeCallocN (   type,
 
)    (type *)calloc((size_t) (n), sizeof(type))

Definition at line 102 of file ptyx.h.

◆ TypedBuffer

#define TypedBuffer (   type)
Value:
type *bf_buf_##type; \
Cardinal bf_len_##type

Definition at line 127 of file ptyx.h.

◆ TypeMalloc

#define TypeMalloc (   type)    TypeMallocN(type, 1)

Definition at line 106 of file ptyx.h.

◆ TypeMallocN

#define TypeMallocN (   type,
 
)    (type *)malloc(sizeof(type) * (size_t) (n))

Definition at line 105 of file ptyx.h.

◆ TypeRealloc

#define TypeRealloc (   type,
  n,
 
)    (type *)realloc(p, (n) * sizeof(type))

Definition at line 108 of file ptyx.h.

◆ TypeXtMalloc

#define TypeXtMalloc (   type)    TypeXtMallocN(type, 1)

Definition at line 114 of file ptyx.h.

◆ TypeXtMallocN

#define TypeXtMallocN (   type,
 
)    (type *)(void *)XtMalloc((Cardinal)(sizeof(type) * (size_t) (n)))

Definition at line 113 of file ptyx.h.

◆ TypeXtMallocX

#define TypeXtMallocX (   type,
 
)    (type *)(void *)XtMalloc((Cardinal)(sizeof(type) + (size_t) (n)))

Definition at line 112 of file ptyx.h.

◆ TypeXtReallocN

#define TypeXtReallocN (   t,
  p,
 
)    (t *)(void *)XtRealloc((char *)(p), (Cardinal)(sizeof(t) * (size_t) (n)))

Definition at line 110 of file ptyx.h.

◆ UCS_LIMIT

#define UCS_LIMIT   0x80000000U /* both limit and flag for non-UCS */

Definition at line 420 of file ptyx.h.

◆ UCS_REPL

#define UCS_REPL   0xfffd

Definition at line 419 of file ptyx.h.

◆ UNDEFINE_COLOR

#define UNDEFINE_COLOR (   s,
 
)    ((s)->which &= (~((w)<<1)))

Definition at line 1413 of file ptyx.h.

◆ UNDERLINE

#define UNDERLINE   AttrBIT(1) /* true if underlining */

Definition at line 3359 of file ptyx.h.

◆ USE_BOLD

#define USE_BOLD (   screen)    ((screen)->allowBoldFonts)

Definition at line 3430 of file ptyx.h.

◆ USE_HANDSHAKE

#define USE_HANDSHAKE   1

Definition at line 214 of file ptyx.h.

◆ USE_PTY_DEVICE

#define USE_PTY_DEVICE   1

Definition at line 181 of file ptyx.h.

◆ USE_PTY_SEARCH

#define USE_PTY_SEARCH   1

Definition at line 182 of file ptyx.h.

◆ UseItalicFont

#define UseItalicFont (   screen)    (!(screen)->colorITMode)

Definition at line 1474 of file ptyx.h.

◆ UsingRenderFont

#define UsingRenderFont (   xw)    (((xw)->work.render_font == True) && !IsIcon(TScreenOf(xw)))

Definition at line 3540 of file ptyx.h.

◆ VDrawable

#define VDrawable (   screen)    VWindow(screen)

Definition at line 3553 of file ptyx.h.

◆ VShellWindow

#define VShellWindow (   xw)    XtWindow(SHELL_OF(xw))

Definition at line 3546 of file ptyx.h.

◆ VWindow

#define VWindow (   screen)    WhichVWin(screen)->window

Definition at line 3545 of file ptyx.h.

◆ WhichTWin

#define WhichTWin (   screen)    (&((screen)->fullTwin))

Definition at line 3527 of file ptyx.h.

◆ WhichVFont

#define WhichVFont (   screen,
  name 
)    getNormalFont(screen, (int)(name))->fs

Definition at line 3529 of file ptyx.h.

◆ WhichVWin

#define WhichVWin (   screen)    (&((screen)->fullVwin))

Definition at line 3526 of file ptyx.h.

◆ WIDEST_ICHAR

#define WIDEST_ICHAR   0x1fffff

Definition at line 1675 of file ptyx.h.

◆ Width

#define Width (   screen)    WhichVWin(screen)->width

Definition at line 3556 of file ptyx.h.

◆ WRAPAROUND

#define WRAPAROUND   MiscBIT(0) /* true if auto wraparound mode */

Definition at line 3388 of file ptyx.h.

◆ Wres

#define Wres (   name,
  class,
  offset,
  dftvalue 
)
Value:
{RES_NAME(name), RES_CLASS(class), XtRWidget, sizeof(Widget), \
RES_OFFSET(offset), XtRWidget, (XtPointer) dftvalue}

Definition at line 1723 of file ptyx.h.

◆ xBIT

#define xBIT (   n)    (1 << (n))

Definition at line 358 of file ptyx.h.

◆ XTERM_POUND

#define XTERM_POUND   0x1E /* internal mapping for '#' */

Definition at line 379 of file ptyx.h.

Typedef Documentation

◆ Char

typedef unsigned char Char

Definition at line 316 of file ptyx.h.

◆ CharData

typedef IChar CharData

Definition at line 1825 of file ptyx.h.

◆ CLineData

typedef const LineData CLineData

Definition at line 1844 of file ptyx.h.

◆ FormatSelect

typedef void(* FormatSelect) (Widget, char *, char *, CELL *, CELL *)

Definition at line 996 of file ptyx.h.

◆ IAttr

typedef unsigned short IAttr

Definition at line 1660 of file ptyx.h.

◆ IChar

typedef unsigned IChar

Definition at line 1676 of file ptyx.h.

◆ IFlags

typedef unsigned IFlags

Definition at line 1657 of file ptyx.h.

◆ Misc

typedef struct _Misc Misc

◆ MyColor

typedef int32_t MyColor

Definition at line 1752 of file ptyx.h.

◆ MyGetFont

typedef XTermFonts*(* MyGetFont) (TScreen *, int)

Definition at line 2918 of file ptyx.h.

◆ MyPixel

typedef uint32_t MyPixel

Definition at line 1751 of file ptyx.h.

◆ ParmType

typedef short ParmType

Definition at line 443 of file ptyx.h.

◆ RowData

typedef Char RowData

Definition at line 1812 of file ptyx.h.

◆ SaveTitle

typedef struct _SaveTitle SaveTitle

◆ ScrnBuf

typedef ScrnPtr* ScrnBuf

Definition at line 318 of file ptyx.h.

◆ ScrnPtr

typedef Char* ScrnPtr

Definition at line 317 of file ptyx.h.

◆ Tabs

typedef unsigned Tabs[(1024/(1<< 5))]

Definition at line 3272 of file ptyx.h.

◆ TekClassPart

typedef struct XtermClassPart TekClassPart

◆ TekClassRec

typedef struct _TekClassRec TekClassRec

◆ TekLink

typedef struct Tek_Link TekLink

◆ TekPart

typedef struct _TekPart TekPart

◆ TekScreen

typedef struct _TekScreen TekScreen

◆ TekWidget

typedef struct _TekWidgetRec * TekWidget

◆ TekWidgetRec

typedef struct _TekWidgetRec TekWidgetRec

◆ UParm

typedef unsigned short UParm

Definition at line 444 of file ptyx.h.

◆ UString

typedef Char* UString

Definition at line 326 of file ptyx.h.

◆ Work

typedef struct _Work Work

◆ XtermClassRec

typedef struct _XtermClassRec XtermClassRec

◆ XtermWidget

typedef struct _XtermWidgetRec * XtermWidget

◆ XtermWidgetRec

Enumeration Type Documentation

◆ BellVolume

enum BellVolume
Enumerator
bvOff 
bvLow 
bvHigh 

Definition at line 2091 of file ptyx.h.

◆ BlinkOps

enum BlinkOps
Enumerator
cbFalse 
cbTrue 
cbAlways 
cbNever 
cbLAST 

Definition at line 1220 of file ptyx.h.

◆ CgsEnum

enum CgsEnum
Enumerator
gcNorm 
gcBold 
gcNormReverse 
gcBoldReverse 
gcFiller 
gcBorder 
gcLine 
gcDots 
gcCNorm 
gcCBold 
gcWide 
gcWBold 
gcWideReverse 
gcWBoldReverse 
gcVTcursNormal 
gcVTcursFilled 
gcVTcursReverse 
gcVTcursOutline 
gcTKcurs 
gcMAX 

Definition at line 932 of file ptyx.h.

◆ ColorOps

enum ColorOps
Enumerator
ecSetColor 
ecGetColor 
ecGetAnsiColor 
ecLAST 

Definition at line 1229 of file ptyx.h.

◆ CSBITS

enum CSBITS
Enumerator
csDEC 
csPOSITIVE 
csATTRIBS 
csNOTRIM 
csDRAWN 
csBYTE 
cs8TH 

Definition at line 487 of file ptyx.h.

◆ DECNRCM_codes

Enumerator
nrc_ASCII 
nrc_British 
nrc_British_Latin_1 
nrc_DEC_Cyrillic 
nrc_DEC_Spec_Graphic 
nrc_DEC_Alt_Chars 
nrc_DEC_Alt_Graphics 
nrc_DEC_Supp 
nrc_DEC_Supp_Graphic 
nrc_DEC_Technical 
nrc_Dutch 
nrc_Finnish 
nrc_Finnish2 
nrc_French 
nrc_French2 
nrc_French_Canadian 
nrc_French_Canadian2 
nrc_German 
nrc_Greek 
nrc_DEC_Greek_Supp 
nrc_ISO_Greek_Supp 
nrc_DEC_Hebrew_Supp 
nrc_Hebrew 
nrc_ISO_Hebrew_Supp 
nrc_Italian 
nrc_ISO_Latin_1_Supp 
nrc_ISO_Latin_2_Supp 
nrc_ISO_Latin_5_Supp 
nrc_ISO_Latin_Cyrillic 
nrc_Norwegian_Danish 
nrc_Norwegian_Danish2 
nrc_Norwegian_Danish3 
nrc_Portugese 
nrc_Russian 
nrc_SCS_NRCS 
nrc_Spanish 
nrc_Swedish 
nrc_Swedish2 
nrc_Swiss 
nrc_DEC_Turkish_Supp 
nrc_Turkish 
nrc_Unknown 

Definition at line 1033 of file ptyx.h.

◆ DECSET_codes

Enumerator
srm_DECCKM 
srm_DECANM 
srm_DECCOLM 
srm_DECSCLM 
srm_DECSCNM 
srm_DECOM 
srm_DECAWM 
srm_DECARM 
srm_X10_MOUSE 
srm_ATT610_BLINK 
srm_CURSOR_BLINK_OPS 
srm_XOR_CURSOR_BLINKS 
srm_DECPFF 
srm_DECPEX 
srm_DECTCEM 
srm_RXVT_SCROLLBAR 
srm_RXVT_FONTSIZE 
srm_DECTEK 
srm_132COLS 
srm_CURSES_HACK 
srm_DECNRCM 
srm_MARGIN_BELL 
srm_REVERSEWRAP 
srm_ALTBUF 
srm_DECNKM 
srm_DECBKM 
srm_DECLRMM 
srm_DECNCSM 
srm_VT200_MOUSE 
srm_VT200_HIGHLIGHT_MOUSE 
srm_BTN_EVENT_MOUSE 
srm_ANY_EVENT_MOUSE 
srm_FOCUS_EVENT_MOUSE 
srm_EXT_MODE_MOUSE 
srm_SGR_EXT_MODE_MOUSE 
srm_URXVT_EXT_MODE_MOUSE 
srm_PIXEL_POSITION_MOUSE 
srm_ALTERNATE_SCROLL 
srm_RXVT_SCROLL_TTY_OUTPUT 
srm_RXVT_SCROLL_TTY_KEYPRESS 
srm_EIGHT_BIT_META 
srm_REAL_NUMLOCK 
srm_META_SENDS_ESC 
srm_DELETE_IS_DEL 
srm_ALT_SENDS_ESC 
srm_KEEP_SELECTION 
srm_SELECT_TO_CLIPBOARD 
srm_BELL_IS_URGENT 
srm_POP_ON_BELL 
srm_KEEP_CLIPBOARD 
srm_ALLOW_ALTBUF 
srm_OPT_ALTBUF 
srm_SAVE_CURSOR 
srm_OPT_ALTBUF_CURSOR 
srm_TCAP_FKEYS 
srm_SUN_FKEYS 
srm_LEGACY_FKEYS 
srm_VT220_FKEYS 
srm_PASTE_IN_BRACKET 

Definition at line 1082 of file ptyx.h.

◆ ebMetaModeTypes

Enumerator
ebFalse 
ebTrue 
ebNever 
ebLocale 
ebLast 

Definition at line 3016 of file ptyx.h.

◆ EventMode

enum EventMode
Enumerator
NORMAL 
LEFTEXTENSION 
RIGHTEXTENSION 

Definition at line 303 of file ptyx.h.

◆ FontOps

enum FontOps
Enumerator
efSetFont 
efGetFont 
efLAST 

Definition at line 1236 of file ptyx.h.

◆ fontWarningTypes

Enumerator
fwNever 
fwResource 
fwAlways 

Definition at line 1928 of file ptyx.h.

◆ FullscreenOps

Enumerator
esFalse 
esTrue 
esAlways 
esNever 
esLAST 

Definition at line 1242 of file ptyx.h.

◆ MenuIndex

enum MenuIndex
Enumerator
noMenu 
mainMenu 
vtMenu 
fontMenu 
tekMenu 

Definition at line 2081 of file ptyx.h.

◆ MouseOps

enum MouseOps
Enumerator
emX10 
emLocator 
emVT200Click 
emVT200Hilite 
emAnyButton 
emAnyEvent 
emFocusEvent 
emExtended 
emSGR 
emURXVT 
emAlternateScroll 
emLAST 

Definition at line 1259 of file ptyx.h.

◆ PasteControls

Enumerator
epNUL 
epSOH 
epSTX 
epETX 
epEOT 
epENQ 
epACK 
epBEL 
epBS 
epHT 
epLF 
epVT 
epFF 
epCR 
epSO 
epSI 
epDLE 
epDC1 
epDC2 
epDC3 
epDC4 
epNAK 
epSYN 
epETB 
epCAN 
epEM 
epSUB 
epESC 
epFS 
epGS 
epRS 
epUS 
epC0 
epDEL 
epLAST 

Definition at line 1274 of file ptyx.h.

◆ pointerModeTypes

Enumerator
pNever 
pNoMouse 
pAlways 
pFocused 

Definition at line 3001 of file ptyx.h.

◆ PushSGR

enum PushSGR
Enumerator
psBOLD 
psATR_FAINT 
psATR_ITALIC 
psUNDERLINE 
psBLINK 
psINVERSE 
psINVISIBLE 
psATR_STRIKEOUT 
psFG_COLOR_obs 
psBG_COLOR_obs 
psATR_DBL_UNDER 
psFG_COLOR 
psBG_COLOR 
MAX_PUSH_SGR 

Definition at line 1329 of file ptyx.h.

◆ SaveModes

enum SaveModes
Enumerator
DP_ALLOW_ALTBUF 
DP_ALTERNATE_SCROLL 
DP_ALT_SENDS_ESC 
DP_BELL_IS_URGENT 
DP_CRS_VISIBLE 
DP_DECANM 
DP_DECARM 
DP_DECAWM 
DP_DECBKM 
DP_DECCKM 
DP_DECCOLM 
DP_DECKPAM 
DP_DECNRCM 
DP_DECOM 
DP_DECPEX 
DP_DECPFF 
DP_DECSCLM 
DP_DECSCNM 
DP_DECTCEM 
DP_DELETE_IS_DEL 
DP_EIGHT_BIT_META 
DP_KEEP_CLIPBOARD 
DP_KEEP_SELECTION 
DP_KEYBOARD_TYPE 
DP_POP_ON_BELL 
DP_PRN_EXTENT 
DP_PRN_FORMFEED 
DP_RXVT_SCROLLBAR 
DP_RXVT_SCROLL_TTY_KEYPRESS 
DP_RXVT_SCROLL_TTY_OUTPUT 
DP_SELECT_TO_CLIPBOARD 
DP_X_ALTBUF 
DP_X_DECCOLM 
DP_X_EXT_MOUSE 
DP_X_LOGGING 
DP_X_LRMM 
DP_X_MARGIN 
DP_X_MORE 
DP_X_MOUSE 
DP_X_NCSM 
DP_X_REVWRAP 
DP_X_X10MSE 
DP_CRS_BLINK 
DP_X_FOCUS 
DP_REAL_NUMLOCK 
DP_META_SENDS_ESC 
DP_RXVT_FONTSIZE 
DP_DECTEK 
DP_LAST 

Definition at line 1995 of file ptyx.h.

◆ SelectionCodes

Enumerator
PRIMARY_CODE 
CLIPBOARD_CODE 
SECONDARY_CODE 
MAX_SELECTION_CODES 

Definition at line 1198 of file ptyx.h.

◆ SelectUnit

enum SelectUnit
Enumerator
Select_CHAR 
Select_WORD 
Select_LINE 
Select_GROUP 
Select_PAGE 
Select_ALL 
Select_REGEX 
NSELECTUNITS 

Definition at line 1206 of file ptyx.h.

◆ ShiftEscapeOps

Enumerator
ssFalse 
ssTrue 
ssAlways 
ssNever 
ssLAST 

Definition at line 1315 of file ptyx.h.

◆ TcapOps

enum TcapOps
Enumerator
etSetTcap 
etGetTcap 
etLAST 

Definition at line 1358 of file ptyx.h.

◆ TcapQuery

enum TcapQuery
Enumerator
XK_TCAPNAME 
XK_COLORS 
XK_RGB 

Definition at line 1493 of file ptyx.h.

◆ TermColors

enum TermColors
Enumerator
TEXT_FG 
TEXT_BG 
TEXT_CURSOR 
MOUSE_FG 
MOUSE_BG 
TEK_FG 
TEK_BG 
HIGHLIGHT_BG 
TEK_CURSOR 
HIGHLIGHT_FG 
NCOLORS 

Definition at line 971 of file ptyx.h.

◆ TitleModes

enum TitleModes
Enumerator
tmSetBase16 
tmGetBase16 
tmSetUtf8 
tmGetUtf8 

Definition at line 1014 of file ptyx.h.

◆ utf8ModeTypes

Enumerator
uFalse 
uTrue 
uAlways 
uDefault 
uLast 

Definition at line 3008 of file ptyx.h.

◆ VTFontEnum

enum VTFontEnum
Enumerator
fNorm 
fBold 
fItal 
fBtal 
fWide 
fWBold 
fWItal 
fWBtal 
fMAX 

Definition at line 913 of file ptyx.h.

◆ WindowOps

enum WindowOps
Enumerator
ewRestoreWin 
ewMinimizeWin 
ewSetWinPosition 
ewSetWinSizePixels 
ewRaiseWin 
ewLowerWin 
ewRefreshWin 
ewSetWinSizeChars 
ewMaximizeWin 
ewFullscreenWin 
ewGetWinState 
ewGetWinPosition 
ewGetWinSizePixels 
ewGetScreenSizePixels 
ewGetCharSizePixels 
ewGetWinSizeChars 
ewGetScreenSizeChars 
ewGetIconTitle 
ewGetWinTitle 
ewPushTitle 
ewPopTitle 
ewSetWinLines 
ewSetXprop 
ewGetSelection 
ewSetSelection 
ewGetChecksum 
ewSetChecksum 
ewLAST 

Definition at line 1364 of file ptyx.h.

◆ XtCursorShape

Enumerator
CURSOR_BLOCK 
CURSOR_UNDERLINE 
CURSOR_BAR 

Definition at line 2266 of file ptyx.h.

◆ XtCursorStyle

Enumerator
DEFAULT_STYLE 
BLINK_BLOCK 
STEADY_BLOCK 
BLINK_UNDERLINE 
STEADY_UNDERLINE 
BLINK_BAR 
STEADY_BAR 

Definition at line 2276 of file ptyx.h.

◆ xtermKeyboardType

Enumerator
keyboardIsLegacy 
keyboardIsDefault 
keyboardIsHP 
keyboardIsSCO 
keyboardIsSun 
keyboardIsTermcap 
keyboardIsVT220 

Definition at line 2991 of file ptyx.h.

Function Documentation

◆ visibleKeyboardType()

Variable Documentation

◆ blank_cell_color

CellColor blank_cell_color
extern

◆ tekWidgetClass

WidgetClass tekWidgetClass
extern

Definition at line 349 of file Tekproc.c.

Referenced by TekInit().

◆ xtermWidgetClass

WidgetClass xtermWidgetClass
extern

Definition at line 906 of file charproc.c.

Referenced by main().