--- rxvt-unicode/src/init.C 2004/02/21 20:33:40 1.28 +++ rxvt-unicode/src/init.C 2004/02/24 16:25:44 1.36 @@ -11,6 +11,7 @@ * - extensive modifications * Copyright (c) 1999 D J Hawkey Jr * - QNX support + * Copyright (c) 2003-2004 Marc Lehmann * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -400,19 +401,9 @@ ks_smallfont = XK_less; #endif -#ifdef GREEK_SUPPORT - ks_greekmodeswith = GREEK_KEYBOARD_MODESWITCH; -#endif - refresh_limit = 1; refresh_type = SLOW_REFRESH; prev_nrow = prev_ncol = 0; -#ifdef MULTICHAR_SET -# ifdef MULTICHAR_ENCODING - encoding_method = MULTICHAR_ENCODING; -# endif - multichar_decode = rxvt_euc2jis; -#endif oldcursor.row = oldcursor.col = -1; #ifdef XPM_BACKGROUND @@ -669,12 +660,6 @@ rs[Rs_scrollBar_thickness]); #endif - TermWin.fontset = new rxvt_fontset (this); - TermWin.fontset->populate (rs[Rs_font]); - TermWin.fwidth = TermWin.fontset->base_font ()->width; - TermWin.fheight = TermWin.fontset->base_font ()->height; - TermWin.fbase = TermWin.fontset->base_font ()->ascent; - #ifdef XTERM_REVERSE_VIDEO /* this is how xterm implements reverseVideo */ if (Options & Opt_reverseVideo) @@ -807,8 +792,8 @@ { #if HAVE_XSETLOCALE || HAVE_SETLOCALE free (this->locale); - this->locale = rxvt_strdup (setlocale (LC_CTYPE, "")); - rxvt_set_locale (this->locale); + this->locale = rxvt_strdup (setlocale (LC_CTYPE, locale)); + SET_LOCALE (this->locale); mbstate.reset (); #endif #if HAVE_NL_LANGINFO @@ -902,10 +887,6 @@ SavedModes |= PrivMode_menuBar; } -#ifdef GREEK_SUPPORT - greek_init (); -#endif - #ifdef CURSOR_BLINK if (Options & Opt_cursorBlink) (void)gettimeofday (&lastcursorchange, NULL); @@ -1146,7 +1127,13 @@ /* grab colors before netscape does */ Get_Colours (); - change_font (1, NULL); + if (!change_font (rs[Rs_font])) + { + fprintf (stderr, "unable to load a base font, please provide one using -fn fontname\n"); + destroy (); + return; + } + window_calc (0, 0); old_width = szHint.width; old_height = szHint.height; @@ -1261,11 +1248,15 @@ 0, PixColors[Color_fg], PixColors[Color_scroll]); + #ifdef DEBUG_X XStoreName (display->display, menuBar.win, "menubar"); #endif - XDefineCursor (display->display, menuBar.win, pointer_leftptr); + menuBar.drawable = new rxvt_drawable (display, menuBar.win); + + XDefineCursor (display->display, menuBar.win, + XCreateFontCursor (display->display, XC_left_ptr)); XSelectInput (display->display, menuBar.win, (ExposureMask | ButtonPressMask | ButtonReleaseMask @@ -1298,17 +1289,15 @@ GCForeground | GCBackground | GCGraphicsExposures, &gcvalue); + TermWin.drawable = new rxvt_drawable (display, TermWin.vt); + #if defined(MENUBAR) || defined(RXVT_SCROLLBAR) gcvalue.foreground = PixColors[Color_topShadow]; - topShadowGC = XCreateGC (display->display, TermWin.vt, - GCForeground, &gcvalue); + topShadowGC = XCreateGC (display->display, TermWin.vt, GCForeground, &gcvalue); gcvalue.foreground = PixColors[Color_bottomShadow]; - botShadowGC = XCreateGC (display->display, TermWin.vt, - GCForeground, &gcvalue); - gcvalue.foreground = PixColors[ (XDEPTH <= 2 ? Color_fg - : Color_scroll)]; - scrollbarGC = XCreateGC (display->display, TermWin.vt, - GCForeground, &gcvalue); + botShadowGC = XCreateGC (display->display, TermWin.vt, GCForeground, &gcvalue); + gcvalue.foreground = PixColors[ (XDEPTH <= 2 ? Color_fg : Color_scroll)]; + scrollbarGC = XCreateGC (display->display, TermWin.vt, GCForeground, &gcvalue); #endif }