ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/rxvt.h
(Generate patch)

Comparing rxvt-unicode/src/rxvt.h (file contents):
Revision 1.344 by ayin, Sat Dec 29 14:25:42 2007 UTC vs.
Revision 1.362 by ayin, Tue Feb 19 13:01:33 2008 UTC

97/* 97/*
98 ***************************************************************************** 98 *****************************************************************************
99 * SYSTEM HACKS 99 * SYSTEM HACKS
100 ***************************************************************************** 100 *****************************************************************************
101 */ 101 */
102/* Consistent defines - please report on the necessity
103 * @ Unixware: defines (__svr4__)
104 */
105#if defined (SVR4) && !defined (__svr4__)
106# define __svr4__ 1
107#endif
108#if defined (sun) && !defined (__sun__)
109# define __sun__ 1
110#endif
111 102
112#ifndef HAVE_XPOINTER 103#ifndef HAVE_XPOINTER
113typedef char *XPointer; 104typedef char *XPointer;
114#endif 105#endif
115 106
209 ***************************************************************************** 200 *****************************************************************************
210 * STRUCTURES AND TYPEDEFS 201 * STRUCTURES AND TYPEDEFS
211 ***************************************************************************** 202 *****************************************************************************
212 */ 203 */
213 204
214/* If we're using either the rxvt scrollbar, keep the
215 * scrollColor resource.
216 */
217#if defined(RXVT_SCROLLBAR) || defined(NEXT_SCROLLBAR) || defined(PLAIN_SCROLLBAR)
218# define KEEP_SCROLLCOLOR 1
219#else
220# undef KEEP_SCROLLCOLOR
221#endif
222
223/* 205/*
224 * the 'essential' information for reporting Mouse Events 206 * the 'essential' information for reporting Mouse Events
225 * pared down from XButtonEvent 207 * pared down from XButtonEvent
226 */ 208 */
227struct mouse_event { 209struct mouse_event {
277# define NO_MOUSE_REPORT_SCROLLBAR 1 259# define NO_MOUSE_REPORT_SCROLLBAR 1
278#endif 260#endif
279 261
280#define scrollBar_esc 30 262#define scrollBar_esc 30
281 263
282#if defined(RXVT_SCROLLBAR) || defined(NEXT_SCROLLBAR) || defined(XTERM_SCROLLBAR) || defined(PLAIN_SCROLLBAR) 264#if !defined (RXVT_SCROLLBAR) && !defined (NEXT_SCROLLBAR)
283# define HAVE_SCROLLBARS 1 265# define NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING 1
284#endif 266#endif
285 267
286enum { 268enum {
287 NO_REFRESH = 0, /* Window not visible at all! */ 269 NO_REFRESH = 0, /* Window not visible at all! */
288 FAST_REFRESH = 1, /* Fully exposed window */ 270 FAST_REFRESH = 1, /* Fully exposed window */
394 XTerm_name = 0, 376 XTerm_name = 0,
395 XTerm_iconName = 1, 377 XTerm_iconName = 1,
396 XTerm_title = 2, 378 XTerm_title = 2,
397 XTerm_property = 3, // change X property 379 XTerm_property = 3, // change X property
398 XTerm_Color = 4, // change colors 380 XTerm_Color = 4, // change colors
399 XTerm_Color00 = 10, // not implemented, CLASH! 381 XTerm_Color00 = 10, // change fg color
400 XTerm_Color01 = 11, // not implemented 382 XTerm_Color01 = 11, // change bg color
401 XTerm_Color_cursor = 12, // change actual 'Cursor' color 383 XTerm_Color_cursor = 12, // change actual 'Cursor' color
402 XTerm_Color_pointer_fg = 13, // change actual 'Pointer' fg color 384 XTerm_Color_pointer_fg = 13, // change actual 'Pointer' fg color
403 XTerm_Color_pointer_bg = 14, // change actual 'Pointer' bg color 385 XTerm_Color_pointer_bg = 14, // change actual 'Pointer' bg color
404 XTerm_Color05 = 15, // not implemented (tektronix fg) 386 XTerm_Color05 = 15, // not implemented (tektronix fg)
405 XTerm_Color06 = 16, // not implemented (tektronix bg) 387 XTerm_Color06 = 16, // not implemented (tektronix bg)
410 XTerm_konsole30 = 30, // reserved for konsole 392 XTerm_konsole30 = 30, // reserved for konsole
411 XTerm_konsole31 = 31, // reserved for konsole 393 XTerm_konsole31 = 31, // reserved for konsole
412 XTerm_emacs51 = 51, // reserved for emacs shell 394 XTerm_emacs51 = 51, // reserved for emacs shell
413 /* 395 /*
414 * rxvt extensions of XTerm OSCs: ESC ] Ps;Pt (ST|BEL) 396 * rxvt extensions of XTerm OSCs: ESC ] Ps;Pt (ST|BEL)
415 * at least Rxvt_Color_BD and Rxvt_Color_UL clash with xterm
416 */ 397 */
417 Rxvt_Color_BD = 18, // change actual 'Bold' color 398
418 Rxvt_Color_UL = 19, // change actual 'Underline' color 399 // deprecated
400 Rxvt_Color_BD = 18,
401 Rxvt_Color_UL = 19,
402 Rxvt_restoreFG = 39,
403 Rxvt_restoreBG = 49,
404
419 Rxvt_Pixmap = 20, // new bg pixmap 405 Rxvt_Pixmap = 20, // new bg pixmap
420 Rxvt_restoreFG = 39, // change default fg color
421 Rxvt_restoreBG = 49, // change default bg color
422 Rxvt_dumpscreen = 55, // dump scrollback and all of screen 406 Rxvt_dumpscreen = 55, // dump scrollback and all of screen
423 407
424 URxvt_locale = 701, // change locale 408 URxvt_locale = 701, // change locale
425 URxvt_version = 702, // request version 409 URxvt_version = 702, // request version
426 410
427 URxvt_Color_IT = 704, // change actual 'Italic' colour 411 URxvt_Color_IT = 704, // change actual 'Italic' colour
428 URxvt_Color_tint = 705, // change actual tint colour 412 URxvt_Color_tint = 705, // change actual tint colour
429 URxvt_Color_BD = 706, 413 URxvt_Color_BD = 706, // change actual 'Bold' color
430 URxvt_Color_UL = 707, 414 URxvt_Color_UL = 707, // change actual 'Underline' color
431 415
432 URxvt_font = 710, 416 URxvt_font = 710,
433 URxvt_boldFont = 711, 417 URxvt_boldFont = 711,
434 URxvt_italicFont = 712, 418 URxvt_italicFont = 712,
435 URxvt_boldItalicFont = 713, 419 URxvt_boldItalicFont = 713,
495 Color_underline, 479 Color_underline,
496#endif 480#endif
497#ifdef OPTION_HC 481#ifdef OPTION_HC
498 Color_HC, 482 Color_HC,
499#endif 483#endif
500#ifdef KEEP_SCROLLCOLOR
501 Color_scroll, 484 Color_scroll,
485#ifdef RXVT_SCROLLBAR
502 Color_trough, 486 Color_trough,
503#endif 487#endif
504#if ENABLE_TRANSPARENCY 488#if ENABLE_TRANSPARENCY
505 Color_tint, 489 Color_tint,
506#endif 490#endif
507#if OFF_FOCUS_FADING 491#if OFF_FOCUS_FADING
508 Color_fade, 492 Color_fade,
509#endif 493#endif
510 NRS_COLORS, /* */ 494 NRS_COLORS, /* */
511#ifdef KEEP_SCROLLCOLOR 495#ifdef RXVT_SCROLLBAR
512 Color_topShadow = NRS_COLORS, 496 Color_topShadow = NRS_COLORS,
513 Color_bottomShadow, 497 Color_bottomShadow,
514 TOTAL_COLORS 498 TOTAL_COLORS
515#else 499#else
516 TOTAL_COLORS = NRS_COLORS 500 TOTAL_COLORS = NRS_COLORS
552#define PrivMode_smoothScroll (1UL<<17) 536#define PrivMode_smoothScroll (1UL<<17)
553#define PrivMode_vt52 (1UL<<18) 537#define PrivMode_vt52 (1UL<<18)
554#define PrivMode_LFNL (1UL<<19) 538#define PrivMode_LFNL (1UL<<19)
555#define PrivMode_MouseBtnEvent (1UL<<20) 539#define PrivMode_MouseBtnEvent (1UL<<20)
556#define PrivMode_MouseAnyEvent (1UL<<21) 540#define PrivMode_MouseAnyEvent (1UL<<21)
541#define PrivMode_BracketPaste (1UL<<22)
557 542
558#define PrivMode_mouse_report (PrivMode_MouseX10|PrivMode_MouseX11|PrivMode_MouseBtnEvent|PrivMode_MouseAnyEvent) 543#define PrivMode_mouse_report (PrivMode_MouseX10|PrivMode_MouseX11|PrivMode_MouseBtnEvent|PrivMode_MouseAnyEvent)
559 544
560#ifdef ALLOW_132_MODE 545#ifdef ALLOW_132_MODE
561# define PrivMode_Default (PrivMode_Autowrap|PrivMode_ShiftKeys|PrivMode_VisibleCursor|PrivMode_132OK) 546# define PrivMode_Default (PrivMode_Autowrap|PrivMode_ShiftKeys|PrivMode_VisibleCursor|PrivMode_132OK)
976 961
977 unsigned char refresh_type, 962 unsigned char refresh_type,
978#ifdef META8_OPTION 963#ifdef META8_OPTION
979 meta_char, /* Alt-key prefix */ 964 meta_char, /* Alt-key prefix */
980#endif 965#endif
981 scrollbar_align,
982 selection_wait, 966 selection_wait,
983 selection_type; 967 selection_type;
984/* ---------- */ 968/* ---------- */
985 bool rvideo_state, rvideo_mode; 969 bool rvideo_state, rvideo_mode;
986#ifndef NO_BELL 970#ifndef NO_BELL
1004 /* give proper Scroll behaviour */ 988 /* give proper Scroll behaviour */
1005#if defined(MOUSE_WHEEL) && defined(MOUSE_SLIP_WHEELING) 989#if defined(MOUSE_WHEEL) && defined(MOUSE_SLIP_WHEELING)
1006 mouse_slip_wheel_speed, 990 mouse_slip_wheel_speed,
1007#endif 991#endif
1008 refresh_count, 992 refresh_count,
1009 last_bot, /* scrollbar last bottom position */
1010 last_top, /* scrollbar last top position */
1011 last_state, /* scrollbar last state */
1012 scrollbar_len,
1013 window_vt_x, 993 window_vt_x,
1014 window_vt_y, 994 window_vt_y,
1015 window_sb_x,
1016 mouse_row, 995 mouse_row,
1017 mouse_col, 996 mouse_col,
1018# ifdef POINTER_BLANK 997# ifdef POINTER_BLANK
1019 pointerBlankDelay, 998 pointerBlankDelay,
1020# endif 999# endif
1028 unsigned long priv_modes, 1007 unsigned long priv_modes,
1029 SavedModes; 1008 SavedModes;
1030/* ---------- */ 1009/* ---------- */
1031 Atom *xa; 1010 Atom *xa;
1032/* ---------- */ 1011/* ---------- */
1033#ifdef RXVT_SCROLLBAR
1034 GC scrollbarGC,
1035 topShadowGC,
1036 botShadowGC;
1037#endif
1038#ifdef XTERM_SCROLLBAR
1039 GC xscrollbarGC,
1040 ShadowGC;
1041#endif
1042#ifdef PLAIN_SCROLLBAR
1043 GC pscrollbarGC;
1044#endif
1045#ifdef NEXT_SCROLLBAR
1046 GC blackGC,
1047 whiteGC,
1048 grayGC,
1049 darkGC,
1050 stippleGC;
1051 Pixmap dimple,
1052 upArrow,
1053 downArrow,
1054 upArrowHi,
1055 downArrowHi;
1056#endif
1057/* ---------- */
1058 Time selection_time, 1012 Time selection_time,
1059 selection_request_time; 1013 selection_request_time;
1060 pid_t cmd_pid; /* process id of child */ 1014 pid_t cmd_pid; /* process id of child */
1061 char * incr_buf; 1015 char * incr_buf;
1062 size_t incr_buf_size, incr_buf_fill; 1016 size_t incr_buf_size, incr_buf_fill;
1063/* ---------- */
1064 Cursor leftptr_cursor;
1065/* ---------- */ 1017/* ---------- */
1066 struct mouse_event MEvent; 1018 struct mouse_event MEvent;
1067 XComposeStatus compose; 1019 XComposeStatus compose;
1068 struct termios tio; 1020 struct termios tio;
1069 row_col_t oldcursor; 1021 row_col_t oldcursor;
1124 1076
1125#if ENABLE_FRILLS || ISO_14755 1077#if ENABLE_FRILLS || ISO_14755
1126 // ISO 14755 entry support 1078 // ISO 14755 entry support
1127 unicode_t iso14755buf; 1079 unicode_t iso14755buf;
1128 void commit_iso14755 (); 1080 void commit_iso14755 ();
1129 int hex_keyval (XKeyEvent &ev);
1130# if ISO_14755 1081# if ISO_14755
1131 void iso14755_51 (unicode_t ch, rend_t r = DEFAULT_RSTYLE, int x = 0, int y = -1); 1082 void iso14755_51 (unicode_t ch, rend_t r = DEFAULT_RSTYLE, int x = 0, int y = -1);
1132 void iso14755_54 (int x, int y); 1083 void iso14755_54 (int x, int y);
1133# endif 1084# endif
1134#endif 1085#endif
1155#endif 1106#endif
1156 1107
1157 void x_cb (XEvent &xev); 1108 void x_cb (XEvent &xev);
1158 xevent_watcher termwin_ev; 1109 xevent_watcher termwin_ev;
1159 xevent_watcher vt_ev; 1110 xevent_watcher vt_ev;
1160#ifdef HAVE_SCROLLBARS
1161 xevent_watcher scrollbar_ev; 1111 xevent_watcher scrollbar_ev;
1162#endif
1163 1112
1164 void child_cb (ev::child &w, int revents); ev::child child_ev; 1113 void child_cb (ev::child &w, int revents); ev::child child_ev;
1165 void destroy_cb (ev::idle &w, int revents); ev::idle destroy_ev; 1114 void destroy_cb (ev::idle &w, int revents); ev::idle destroy_ev;
1166 void refresh_check (); 1115 void refresh_check ();
1167 void flush (); 1116 void flush ();
1268 void process_terminal_mode (int mode, int priv, unsigned int nargs, const int *arg); 1217 void process_terminal_mode (int mode, int priv, unsigned int nargs, const int *arg);
1269 void process_sgr_mode (unsigned int nargs, const int *arg); 1218 void process_sgr_mode (unsigned int nargs, const int *arg);
1270 void process_graphics (); 1219 void process_graphics ();
1271 // init.C 1220 // init.C
1272 void init_vars (); 1221 void init_vars ();
1273 void init_secondary ();
1274 const char **init_resources (int argc, const char *const *argv); 1222 const char **init_resources (int argc, const char *const *argv);
1223 void init (int argc, const char *const *argv, stringvec *envv);
1275 void init_env (); 1224 void init_env ();
1276 void set_locale (const char *locale); 1225 void set_locale (const char *locale);
1277 void init_xlocale (); 1226 void init_xlocale ();
1278 void init_command (const char *const *argv); 1227 void init_command (const char *const *argv);
1279 void run_command (const char *const *argv); 1228 void run_command (const char *const *argv);
1286 void tt_winch (); 1235 void tt_winch ();
1287 rxvt_term (); 1236 rxvt_term ();
1288 ~rxvt_term (); 1237 ~rxvt_term ();
1289 void destroy (); 1238 void destroy ();
1290 void emergency_cleanup (); 1239 void emergency_cleanup ();
1291 void init (int argc, const char *const *argv, stringvec *envv);
1292 void recolour_cursor (); 1240 void recolour_cursor ();
1293 void resize_all_windows (unsigned int newwidth, unsigned int newheight, int ignoreparent); 1241 void resize_all_windows (unsigned int newwidth, unsigned int newheight, int ignoreparent);
1294 void window_calc (unsigned int newwidth, unsigned int newheight); 1242 void window_calc (unsigned int newwidth, unsigned int newheight);
1295 bool set_fonts (); 1243 bool set_fonts ();
1296 void set_string_property (Atom prop, const char *str, int len = -1); 1244 void set_string_property (Atom prop, const char *str, int len = -1);
1382 options[opt >> 3] |= (1 << (opt & 7)); 1330 options[opt >> 3] |= (1 << (opt & 7));
1383 else 1331 else
1384 options[opt >> 3] &= ~(1 << (opt & 7)); 1332 options[opt >> 3] &= ~(1 << (opt & 7));
1385 } 1333 }
1386 1334
1387 void PrivMode (int set, unsigned bit) NOTHROW 1335 void set_privmode (unsigned bit, int set) NOTHROW
1388 { 1336 {
1389 if (set) 1337 if (set)
1390 priv_modes |= bit; 1338 priv_modes |= bit;
1391 else 1339 else
1392 priv_modes &= ~bit; 1340 priv_modes &= ~bit;
1468 void selection_send (const XSelectionRequestEvent &rq) NOTHROW; 1416 void selection_send (const XSelectionRequestEvent &rq) NOTHROW;
1469 void selection_click (int clicks, int x, int y) NOTHROW; 1417 void selection_click (int clicks, int x, int y) NOTHROW;
1470 void selection_extend (int x, int y, int flag) NOTHROW; 1418 void selection_extend (int x, int y, int flag) NOTHROW;
1471 void selection_rotate (int x, int y) NOTHROW; 1419 void selection_rotate (int x, int y) NOTHROW;
1472 1420
1473#if defined(NEXT_SCROLLBAR)
1474 // scrollbar-next.C
1475 Pixmap renderPixmap (const char *const *data, int width, int height);
1476 void init_scrollbar_stuff ();
1477 void drawBevel (Drawable d, int x1, int y1, int w, int h);
1478 int scrollbar_show_next (int update, int last_top, int last_bot, int scrollbar_len);
1479#endif
1480
1481#if defined(RXVT_SCROLLBAR)
1482 // scrollbar-rxvt.C
1483 int scrollbar_show_rxvt (int update, int last_top, int last_bot, int scrollbar_len);
1484#endif
1485
1486#if defined(XTERM_SCROLLBAR)
1487 // scrollbar-xterm.C
1488 int scrollbar_show_xterm (int update, int last_top, int last_bot, int scrollbar_len);
1489#endif
1490
1491#if defined(PLAIN_SCROLLBAR)
1492 // scrollbar-plain.C
1493 int scrollbar_show_plain (int update, int last_top, int last_bot, int scrollbar_len);
1494#endif
1495
1496 // scrollbar.C
1497 void resize_scrollbar ();
1498 int scrollbar_mapping (int map);
1499 int scrollbar_show (int update);
1500 void setup_scrollbar (const char *scrollalign, const char *scrollstyle, const char *thickness);
1501
1502 // xdefaults.C 1421 // xdefaults.C
1503 void get_options (int argc, const char *const *argv); 1422 void get_options (int argc, const char *const *argv);
1504 int parse_keysym (const char *str, const char *arg); 1423 int parse_keysym (const char *str, const char *arg);
1505 const char *x_resource (const char *name); 1424 const char *x_resource (const char *name);
1506 void extract_resources (); 1425 void extract_resources ();

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines