--- rxvt-unicode/src/rxvt.h 2006/01/31 18:36:35 1.251 +++ rxvt-unicode/src/rxvt.h 2006/08/26 06:37:10 1.262 @@ -10,15 +10,16 @@ #endif #if ENABLE_PERL -# define ENABLE_FRILLS 1 +# define ENABLE_FRILLS 1 # define ENABLE_COMBINING 1 #endif #if ENABLE_FRILLS -# define ENABLE_XEMBED 1 -# define ENABLE_EWMH 1 +# define ENABLE_XEMBED 1 +# define ENABLE_EWMH 1 # define ENABLE_XIM_ONTHESPOT 1 -# define CURSOR_BLINK 1 +# define CURSOR_BLINK 1 +# define OPTION_HC 1 #else # define ENABLE_MINIMAL 1 #endif @@ -775,8 +776,8 @@ # define XPMClearArea(a, b, c, d, e, f, g) #endif -typedef callback1 log_callback; -typedef callback1 getfd_callback; +typedef callback log_callback; +typedef callback getfd_callback; #define SET_LOCALE(locale) rxvt_set_locale (locale) extern bool rxvt_set_locale (const char *locale) NOTHROW; @@ -788,6 +789,8 @@ #define LINE_LONGER 0x0001 // line is continued on the next row #define LINE_FILTERED 0x0002 // line has been filtered #define LINE_COMPRESSED 0x0004 // line has been compressed (NYI) +#define LINE_FILTER 0x0008 // line needs to be filtered before display (NYI) +#define LINE_BIDI 0x0010 // line needs bidi (NYI) struct line_t { text_t *t; // terminal the text @@ -890,11 +893,17 @@ /****************************************************************************/ #ifdef KEYSYM_RESOURCE - class keyboard_manager; +class keyboard_manager; #endif struct rxvt_term : zero_initialized, rxvt_vars, rxvt_screen { - log_callback *log_hook; // log error messages through this hook, if != 0 + + // special markers with magic addresses + static const char resval_undef []; // options specifically unset + static const char resval_on []; // boolean options switched on + static const char resval_off []; // or off + + log_callback *log_hook; // log error messages through this hook, if != 0 getfd_callback *getfd_hook; // convert remote to local fd, if != 0 #if ENABLE_PERL rxvt_perl_term perl; @@ -1091,10 +1100,10 @@ void vt_select_input () const NOTHROW { - XSelectInput (xdisp, vt, vt_emask | vt_emask_perl | vt_emask_xim); + XSelectInput (dpy, vt, vt_emask | vt_emask_perl | vt_emask_xim); } -#if TRANSPARENT +#if TRANSPARENT || ENABLE_PERL void rootwin_cb (XEvent &xev); xevent_watcher rootwin_ev; #endif @@ -1166,8 +1175,8 @@ void make_current () const // make this the "currently active" urxvt instance { SET_R (this); - rxvt_set_locale (locale); set_environ (envv); + rxvt_set_locale (locale); } void init_secondary (); @@ -1202,13 +1211,14 @@ bool IMisRunning (); void IMSendSpot (); bool IM_get_IC (const char *modifiers); - void IMSetStatusPosition (); + void IMSetPosition (); #endif void resize_scrollbar (); // command.C - void lookup_key (XKeyEvent &ev); + void key_press (XKeyEvent &ev); + void key_release (XKeyEvent &ev); unsigned int cmd_write (const char *str, unsigned int count); wchar_t next_char () NOTHROW; @@ -1222,6 +1232,7 @@ void button_release (XButtonEvent &ev); void focus_in (); void focus_out (); + void update_fade_color (unsigned int idx); int check_our_parents (); #ifdef PRINTPIPE FILE *popen_printer (); @@ -1254,6 +1265,7 @@ void set_window_color (int idx, const char *color); void set_colorfgbg (); bool set_color (rxvt_color &color, const char *name); + void alias_color (int dst, int src); void set_widthheight (unsigned int newwidth, unsigned int newheight); // screen.C