… | |
… | |
182 | |
182 | |
183 | #define menuBar_esc 10 |
183 | #define menuBar_esc 10 |
184 | #define scrollBar_esc 30 |
184 | #define scrollBar_esc 30 |
185 | #define menuBar_margin 2 /* margin below text */ |
185 | #define menuBar_margin 2 /* margin below text */ |
186 | |
186 | |
187 | #if defined(RXVT_SCROLLBAR) || defined(NEXT_SCROLLBAR) || defined(XTERM_SCROLLBAR) |
187 | #if defined(RXVT_SCROLLBAR) || defined(NEXT_SCROLLBAR) || defined(XTERM_SCROLLBAR) || defined(PLAIN_SCROLLBAR) |
188 | # define HAVE_SCROLLBARS |
188 | # define HAVE_SCROLLBARS |
189 | #endif |
189 | #endif |
190 | |
190 | |
191 | /* width of scrollBar, menuBar shadow, must be 1 or 2 */ |
191 | /* width of scrollBar, menuBar shadow, must be 1 or 2 */ |
192 | #ifdef HALFSHADOW |
192 | #ifdef HALFSHADOW |
… | |
… | |
200 | #define R_SB_ALIGN_BOTTOM 2 |
200 | #define R_SB_ALIGN_BOTTOM 2 |
201 | |
201 | |
202 | #define R_SB_RXVT 0 |
202 | #define R_SB_RXVT 0 |
203 | #define R_SB_NEXT 1 |
203 | #define R_SB_NEXT 1 |
204 | #define R_SB_XTERM 2 |
204 | #define R_SB_XTERM 2 |
|
|
205 | #define R_SB_PLAIN 4 |
205 | |
206 | |
206 | #define SB_WIDTH_NEXT 19 |
207 | #define SB_WIDTH_NEXT 19 |
207 | #define SB_WIDTH_XTERM 7 |
208 | #define SB_WIDTH_XTERM 15 |
|
|
209 | #define SB_WIDTH_PLAIN 7 |
208 | #ifndef SB_WIDTH_RXVT |
210 | #ifndef SB_WIDTH_RXVT |
209 | # define SB_WIDTH_RXVT 10 |
211 | # define SB_WIDTH_RXVT 10 |
210 | #endif |
212 | #endif |
211 | |
213 | |
212 | /* |
214 | /* |
… | |
… | |
543 | Rs_pointerBlankDelay, |
545 | Rs_pointerBlankDelay, |
544 | Rs_imLocale, |
546 | Rs_imLocale, |
545 | NUM_RESOURCES |
547 | NUM_RESOURCES |
546 | }; |
548 | }; |
547 | |
549 | |
548 | // see init.C:xa_named, which must be kept in sync |
550 | // see init.C:xa_names, which must be kept in sync |
549 | enum { |
551 | enum { |
550 | XA_TEXT = 0, |
552 | XA_TEXT = 0, |
551 | XA_COMPOUND_TEXT, |
553 | XA_COMPOUND_TEXT, |
552 | XA_UTF8_STRING, |
554 | XA_UTF8_STRING, |
553 | XA_MULTIPLE, |
555 | XA_MULTIPLE, |
… | |
… | |
604 | #else |
606 | #else |
605 | # define PrivMode_Default \ |
607 | # define PrivMode_Default \ |
606 | (PrivMode_Autowrap|PrivMode_aplKP|PrivMode_ShiftKeys|PrivMode_VisibleCursor) |
608 | (PrivMode_Autowrap|PrivMode_aplKP|PrivMode_ShiftKeys|PrivMode_VisibleCursor) |
607 | #endif |
609 | #endif |
608 | |
610 | |
609 | #define XDEPTH Xdepth |
611 | #define XDEPTH display->depth |
610 | #define XCMAP Xcmap |
612 | #define XCMAP display->cmap |
611 | #define XVISUAL Xvisual |
613 | #define XVISUAL display->visual |
612 | |
614 | |
613 | #define IMBUFSIZ 128 /* input modifier buffer sizes */ |
615 | #define IMBUFSIZ 128 /* input modifier buffer sizes */ |
614 | #ifndef BUFSIZ |
616 | #ifndef BUFSIZ |
615 | # define BUFSIZ 4096 |
617 | # define BUFSIZ 4096 |
616 | #endif |
618 | #endif |
… | |
… | |
648 | #define Height2Pixel(n) ((int32_t)(n) * (int32_t)TermWin.fheight) |
650 | #define Height2Pixel(n) ((int32_t)(n) * (int32_t)TermWin.fheight) |
649 | |
651 | |
650 | #define TermWin_TotalWidth() ((int32_t)TermWin.width + 2 * (int32_t)TermWin.int_bwidth) |
652 | #define TermWin_TotalWidth() ((int32_t)TermWin.width + 2 * (int32_t)TermWin.int_bwidth) |
651 | #define TermWin_TotalHeight() ((int32_t)TermWin.height + 2 * (int32_t)TermWin.int_bwidth) |
653 | #define TermWin_TotalHeight() ((int32_t)TermWin.height + 2 * (int32_t)TermWin.int_bwidth) |
652 | |
654 | |
653 | #define Xroot DefaultRootWindow(Xdisplay) |
|
|
654 | |
|
|
655 | /* how to build & extract colors and attributes */ |
655 | /* how to build & extract colors and attributes */ |
656 | #define GET_BASEFG(x) (((x) & RS_fgMask)) |
656 | #define GET_BASEFG(x) (((x) & RS_fgMask)) |
657 | #define GET_BASEBG(x) (((x) & RS_bgMask)>>Color_Bits) |
657 | #define GET_BASEBG(x) (((x) & RS_bgMask)>>Color_Bits) |
658 | #ifndef NO_BRIGHTCOLOR |
658 | #ifndef NO_BRIGHTCOLOR |
659 | # define GET_FGCOLOR(x) \ |
659 | # define GET_FGCOLOR(x) \ |
… | |
… | |
948 | #endif |
948 | #endif |
949 | #ifdef XTERM_SCROLLBAR |
949 | #ifdef XTERM_SCROLLBAR |
950 | GC xscrollbarGC, |
950 | GC xscrollbarGC, |
951 | ShadowGC; |
951 | ShadowGC; |
952 | #endif |
952 | #endif |
|
|
953 | #ifdef PLAIN_SCROLLBAR |
|
|
954 | GC pscrollbarGC; |
|
|
955 | #endif |
953 | #ifdef NEXT_SCROLLBAR |
956 | #ifdef NEXT_SCROLLBAR |
954 | GC blackGC, |
957 | GC blackGC, |
955 | whiteGC, |
958 | whiteGC, |
956 | grayGC, |
959 | grayGC, |
957 | darkGC, |
960 | darkGC, |
… | |
… | |
989 | #endif |
992 | #endif |
990 | #ifdef GREEK_SUPPORT |
993 | #ifdef GREEK_SUPPORT |
991 | KeySym ks_greekmodeswith; |
994 | KeySym ks_greekmodeswith; |
992 | #endif |
995 | #endif |
993 | #ifdef USE_XIM |
996 | #ifdef USE_XIM |
|
|
997 | rxvt_xim *input_method; |
994 | XIC Input_Context; |
998 | XIC Input_Context; |
995 | XIMStyle input_style; |
999 | XIMStyle input_style; |
996 | int event_type; |
1000 | int event_type; |
997 | #endif |
1001 | #endif |
998 | struct mouse_event MEvent; |
1002 | struct mouse_event MEvent; |
… | |
… | |
1068 | |
1072 | |
1069 | void paste (const unsigned char *data, unsigned int len); |
1073 | void paste (const unsigned char *data, unsigned int len); |
1070 | |
1074 | |
1071 | void flush (); |
1075 | void flush (); |
1072 | |
1076 | |
|
|
1077 | void rootwin_cb (XEvent &xev); |
|
|
1078 | xevent_watcher rootwin_ev; |
|
|
1079 | |
|
|
1080 | void x_cb (XEvent &xev); |
|
|
1081 | xevent_watcher termwin_ev; |
|
|
1082 | xevent_watcher vt_ev; |
|
|
1083 | #ifdef HAVE_SCROLLBARS |
|
|
1084 | xevent_watcher scrollbar_ev; |
|
|
1085 | #endif |
|
|
1086 | #ifdef MENUBAR |
|
|
1087 | xevent_watcher menubar_ev; |
|
|
1088 | #endif |
|
|
1089 | |
1073 | void check_cb (check_watcher &w); check_watcher check_ev; |
1090 | void check_cb (check_watcher &w); check_watcher check_ev; |
1074 | void destroy_cb (time_watcher &w); time_watcher destroy_ev; |
1091 | void destroy_cb (time_watcher &w); time_watcher destroy_ev; |
1075 | |
1092 | |
1076 | void pty_cb (io_watcher &w, short revents); io_watcher pty_ev; |
1093 | void pty_cb (io_watcher &w, short revents); io_watcher pty_ev; |
1077 | void x_cb (io_watcher &w, short revents); io_watcher x_ev; |
|
|
1078 | |
1094 | |
1079 | void incr_cb (time_watcher &w); time_watcher incr_ev; |
1095 | void incr_cb (time_watcher &w); time_watcher incr_ev; |
1080 | |
1096 | |
1081 | #ifdef CURSOR_BLINK |
1097 | #ifdef CURSOR_BLINK |
1082 | void cursor_blink_cb (time_watcher &w); time_watcher cursor_blink_ev; |
1098 | void cursor_blink_cb (time_watcher &w); time_watcher cursor_blink_ev; |
… | |
… | |
1104 | bool init_vars (); |
1120 | bool init_vars (); |
1105 | |
1121 | |
1106 | uint32_t next_char (); |
1122 | uint32_t next_char (); |
1107 | |
1123 | |
1108 | bool pty_fill (); |
1124 | bool pty_fill (); |
1109 | void process_x_events (); |
|
|
1110 | |
1125 | |
1111 | void *operator new (size_t s); |
1126 | void *operator new (size_t s); |
1112 | void operator delete (void *p, size_t s); |
1127 | void operator delete (void *p, size_t s); |
1113 | |
1128 | |
1114 | void init_secondary (); |
1129 | void init_secondary (); |
… | |
… | |
1123 | void color_aliases(int idx); |
1138 | void color_aliases(int idx); |
1124 | void recolour_cursor (); |
1139 | void recolour_cursor (); |
1125 | void create_windows (int argc, const char *const *argv); |
1140 | void create_windows (int argc, const char *const *argv); |
1126 | void resize_all_windows (unsigned int width, unsigned int height, int ignoreparent); |
1141 | void resize_all_windows (unsigned int width, unsigned int height, int ignoreparent); |
1127 | void window_calc (unsigned int width, unsigned int height); |
1142 | void window_calc (unsigned int width, unsigned int height); |
1128 | void set_preedit_area (XRectangle * preedit_rect, XRectangle * status_rect, XRectangle * needed_rect); |
|
|
1129 | |
1143 | |
1130 | #if USE_XIM |
1144 | #if USE_XIM |
|
|
1145 | void im_destroy (); |
|
|
1146 | void im_cb (); im_watcher im_ev; |
1131 | void set_size (XRectangle *size); |
1147 | void im_set_size (XRectangle *size); |
1132 | void set_position (XPoint *pos); |
1148 | void im_set_position (XPoint *pos); |
1133 | void set_color (unsigned long *fg, unsigned long *bg); |
1149 | void im_set_color (unsigned long *fg, unsigned long *bg); |
|
|
1150 | void im_set_preedit_area (XRectangle * preedit_rect, XRectangle * status_rect, XRectangle * needed_rect); |
|
|
1151 | |
|
|
1152 | bool IMisRunning (); |
|
|
1153 | void IMSendSpot (); |
|
|
1154 | bool IM_get_IC (const char *modifiers); |
|
|
1155 | void IMSetStatusPosition (); |
1134 | #endif |
1156 | #endif |
1135 | |
1157 | |
1136 | void resize_scrollbar (); |
1158 | void resize_scrollbar (); |
1137 | |
1159 | |
1138 | void pixel_position (int *x, int *y); |
1160 | void pixel_position (int *x, int *y); |
… | |
… | |
1156 | void scr_expose (int x, int y, int width, int height, bool refresh); |
1178 | void scr_expose (int x, int y, int width, int height, bool refresh); |
1157 | |
1179 | |
1158 | /* autoconvert */ |
1180 | /* autoconvert */ |
1159 | |
1181 | |
1160 | // command.C |
1182 | // command.C |
1161 | void lookup_key (XKeyEvent *ev); |
1183 | void lookup_key (XKeyEvent &ev); |
1162 | unsigned int cmd_write (const unsigned char *str, unsigned int count); |
1184 | unsigned int cmd_write (const unsigned char *str, unsigned int count); |
1163 | uint32_t cmd_getc (); |
1185 | uint32_t cmd_getc (); |
1164 | void mouse_report (const XButtonEvent *ev); |
1186 | void mouse_report (const XButtonEvent &ev); |
1165 | void process_x_event (XEvent *ev); |
|
|
1166 | void button_press (XButtonEvent *ev); |
1187 | void button_press (const XButtonEvent &ev); |
1167 | void button_release (XButtonEvent *ev); |
1188 | void button_release (const XButtonEvent &ev); |
1168 | int check_our_parents (); |
1189 | int check_our_parents (); |
1169 | #ifdef PRINTPIPE |
1190 | #ifdef PRINTPIPE |
1170 | FILE * popen_printer (); |
1191 | FILE * popen_printer (); |
1171 | int pclose_printer (FILE *stream); |
1192 | int pclose_printer (FILE *stream); |
1172 | #endif |
1193 | #endif |
… | |
… | |
1200 | void set_iconName (const char *str); |
1221 | void set_iconName (const char *str); |
1201 | void set_window_color (int idx, const char *color); |
1222 | void set_window_color (int idx, const char *color); |
1202 | void set_colorfgbg (); |
1223 | void set_colorfgbg (); |
1203 | int rXParseAllocColor (rxvt_color * screen_in_out, const char *colour); |
1224 | int rXParseAllocColor (rxvt_color * screen_in_out, const char *colour); |
1204 | void set_widthheight (unsigned int width, unsigned int height); |
1225 | void set_widthheight (unsigned int width, unsigned int height); |
1205 | bool IMisRunning (); |
|
|
1206 | void IMSendSpot (); |
|
|
1207 | bool IM_get_IC (); |
|
|
1208 | void IMSetStatusPosition (); |
|
|
1209 | |
1226 | |
1210 | #ifdef MENUBAR |
1227 | #ifdef MENUBAR |
1211 | // menubar.C |
1228 | // menubar.C |
1212 | void menuitem_free (menu_t *menu, menuitem_t *item); |
1229 | void menuitem_free (menu_t *menu, menuitem_t *item); |
1213 | int action_dispatch (action_t *action); |
1230 | int action_dispatch (action_t *action); |
… | |
… | |
1284 | void selection_make (Time tm); |
1301 | void selection_make (Time tm); |
1285 | void selection_start_colrow (int col, int row); |
1302 | void selection_start_colrow (int col, int row); |
1286 | void selection_delimit_word (enum page_dirn dirn, const row_col_t *mark, row_col_t *ret); |
1303 | void selection_delimit_word (enum page_dirn dirn, const row_col_t *mark, row_col_t *ret); |
1287 | void selection_extend_colrow (int32_t col, int32_t row, int button3, int buttonpress, int clickchange); |
1304 | void selection_extend_colrow (int32_t col, int32_t row, int button3, int buttonpress, int clickchange); |
1288 | void selection_remove_trailing_spaces (); |
1305 | void selection_remove_trailing_spaces (); |
1289 | void selection_send (const XSelectionRequestEvent *rq); |
1306 | void selection_send (const XSelectionRequestEvent &rq); |
1290 | |
1307 | |
1291 | #if defined(NEXT_SCROLLBAR) |
1308 | #if defined(NEXT_SCROLLBAR) |
1292 | // scrollbar-next.C |
1309 | // scrollbar-next.C |
1293 | Pixmap renderPixmap (const char *const *data, int width, int height); |
1310 | Pixmap renderPixmap (const char *const *data, int width, int height); |
1294 | void init_scrollbar_stuff (); |
1311 | void init_scrollbar_stuff (); |
1295 | void drawBevel (Drawable d, int x1, int y1, int w, int h); |
1312 | void drawBevel (Drawable d, int x1, int y1, int w, int h); |
1296 | int scrollbar_show_next (int update, int last_top, int last_bot, int scrollbar_len); |
1313 | int scrollbar_show_next (int update, int last_top, int last_bot, int scrollbar_len); |
1297 | # define scrollbar_update scrollbar_show_next // HACK |
|
|
1298 | #endif |
1314 | #endif |
1299 | |
1315 | |
1300 | #if defined(RXVT_SCROLLBAR) |
1316 | #if defined(RXVT_SCROLLBAR) |
1301 | // scrollbar-rxvt.C |
1317 | // scrollbar-rxvt.C |
1302 | void Draw_button (int x, int y, int state, int dirn); |
1318 | void Draw_button (int x, int y, int state, int dirn); |
1303 | int scrollbar_show_rxvt (int update, int last_top, int last_bot, int scrollbar_len); |
1319 | int scrollbar_show_rxvt (int update, int last_top, int last_bot, int scrollbar_len); |
1304 | # define scrollbar_update scrollbar_show_rxvt // HACK |
|
|
1305 | #endif |
1320 | #endif |
1306 | |
1321 | |
1307 | #if defined(XTERM_SCROLLBAR) |
1322 | #if defined(XTERM_SCROLLBAR) |
1308 | // scrollbar-xterm.C |
1323 | // scrollbar-xterm.C |
1309 | int scrollbar_show_xterm (int update, int last_top, int last_bot, int scrollbar_len); |
1324 | int scrollbar_show_xterm (int update, int last_top, int last_bot, int scrollbar_len); |
1310 | # define scrollbar_update scrollbar_show_xterm // HACK |
1325 | #endif |
|
|
1326 | |
|
|
1327 | #if defined(PLAIN_SCROLLBAR) |
|
|
1328 | // scrollbar-plain.C |
|
|
1329 | int scrollbar_show_plain (int update, int last_top, int last_bot, int scrollbar_len); |
1311 | #endif |
1330 | #endif |
1312 | |
1331 | |
1313 | // scrollbar.C |
1332 | // scrollbar.C |
1314 | int scrollbar_mapping (int map); |
1333 | int scrollbar_mapping (int map); |
1315 | int scrollbar_show (int update); |
1334 | int scrollbar_show (int update); |