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

Comparing rxvt-unicode/src/main.C (file contents):
Revision 1.40 by pcg, Sun Feb 22 08:09:38 2004 UTC vs.
Revision 1.48 by pcg, Wed Mar 3 04:07:52 2004 UTC

80 vt_ev (this, &rxvt_term::x_cb), 80 vt_ev (this, &rxvt_term::x_cb),
81#ifdef HAVE_SCROLLBARS 81#ifdef HAVE_SCROLLBARS
82 scrollbar_ev (this, &rxvt_term::x_cb), 82 scrollbar_ev (this, &rxvt_term::x_cb),
83#endif 83#endif
84#ifdef MENUBAR 84#ifdef MENUBAR
85 menubar_ev (this, &rxvt_term::x_cb), fixme 85 menubar_ev (this, &rxvt_term::x_cb),
86#endif 86#endif
87#ifdef CURSOR_BLINK 87#ifdef CURSOR_BLINK
88 cursor_blink_ev (this, &rxvt_term::cursor_blink_cb), 88 cursor_blink_ev (this, &rxvt_term::cursor_blink_cb),
89#endif 89#endif
90#ifdef TEXT_BLINK 90#ifdef TEXT_BLINK
117#endif 117#endif
118 118
119 delete TermWin.fontset; 119 delete TermWin.fontset;
120 120
121 if (display) 121 if (display)
122 {
123#if defined(MENUBAR) && (MENUBAR_MAX > 1)
124 delete menuBar.drawable;
125 //if (menuBar.win)
126 // XDestroyWindow (display->display, menuBar.win);
127#endif
128 delete TermWin.drawable;
129 // destroy all windows
122 if (TermWin.parent[0]) 130 if (TermWin.parent[0])
123 XDestroyWindow (display->display, TermWin.parent[0]); 131 XDestroyWindow (display->display, TermWin.parent[0]);
132 }
124 133
125 // TODO: free pixcolours, colours should become part of rxvt_display 134 // TODO: free pixcolours, colours should become part of rxvt_display
126 135
127 delete PixColors; 136 delete PixColors;
128 137
249 258
250 const char **cmd_argv = init_resources (argc, argv); 259 const char **cmd_argv = init_resources (argc, argv);
251 260
252 set_locale (""); 261 set_locale ("");
253 262
254#if (MENUBAR_MAX) 263#if MENUBAR_MAX
255 menubar_read (rs[Rs_menu]); 264 menubar_read (rs[Rs_menu]);
256#endif 265#endif
257#ifdef HAVE_SCROLLBARS 266#ifdef HAVE_SCROLLBARS
258 if (Options & Opt_scrollBar) 267 if (Options & Opt_scrollBar)
259 scrollBar.setIdle (); /* set existence for size calculations */ 268 scrollBar.setIdle (); /* set existence for size calculations */
272#ifdef HAVE_SCROLLBARS 281#ifdef HAVE_SCROLLBARS
273 if (Options & Opt_scrollBar) 282 if (Options & Opt_scrollBar)
274 resize_scrollbar (); /* create and map scrollbar */ 283 resize_scrollbar (); /* create and map scrollbar */
275#endif 284#endif
276#if (MENUBAR_MAX) 285#if (MENUBAR_MAX)
277 if (menubar_visible (r)) 286 if (menubar_visible ())
278 XMapWindow (display->display, menuBar.win); 287 XMapWindow (display->display, menuBar.win);
279#endif 288#endif
280#ifdef TRANSPARENT 289#ifdef TRANSPARENT
281 if (Options & Opt_transparent) 290 if (Options & Opt_transparent)
282 { 291 {
376 385
377 p = malloc (size); 386 p = malloc (size);
378 if (p) 387 if (p)
379 return p; 388 return p;
380 389
381 fprintf (stderr, APL_NAME ": memory allocation failure. Aborting"); 390 fprintf (stderr, RESNAME ": memory allocation failure. Aborting");
382 rxvt_clean_exit (); 391 rxvt_clean_exit ();
383 exit (EXIT_FAILURE); 392 exit (EXIT_FAILURE);
384 /* NOTREACHED */ 393 /* NOTREACHED */
385} 394}
386 395
392 401
393 p = calloc (number, size); 402 p = calloc (number, size);
394 if (p) 403 if (p)
395 return p; 404 return p;
396 405
397 fprintf (stderr, APL_NAME ": memory allocation failure. Aborting"); 406 fprintf (stderr, RESNAME ": memory allocation failure. Aborting");
398 rxvt_clean_exit (); 407 rxvt_clean_exit ();
399 exit (EXIT_FAILURE); 408 exit (EXIT_FAILURE);
400 /* NOTREACHED */ 409 /* NOTREACHED */
401} 410}
402 411
411 else 420 else
412 p = malloc (size); 421 p = malloc (size);
413 if (p) 422 if (p)
414 return p; 423 return p;
415 424
416 fprintf (stderr, APL_NAME ": memory allocation failure. Aborting"); 425 fprintf (stderr, RESNAME ": memory allocation failure. Aborting");
417 rxvt_clean_exit (); 426 rxvt_clean_exit ();
418 exit (EXIT_FAILURE); 427 exit (EXIT_FAILURE);
419 /* NOTREACHED */ 428 /* NOTREACHED */
420} 429}
421 430
715 * init = 1 - initialize 724 * init = 1 - initialize
716 * 725 *
717 * fontname == FONT_UP - switch to bigger font 726 * fontname == FONT_UP - switch to bigger font
718 * fontname == FONT_DN - switch to smaller font 727 * fontname == FONT_DN - switch to smaller font
719 */ 728 */
720void 729bool
721rxvt_term::change_font (int init, const char *fontname) 730rxvt_term::change_font (const char *fontname)
722{} 731{
732 if (fontname == FONT_UP)
733 {
734 // TODO
735 }
736 else if (fontname == FONT_DN)
737 {
738 // TODO
739 }
740 else
741 {
742 rxvt_fontset *fs = new rxvt_fontset (this);
723 743
724void 744 if (fs && fs->populate (fontname ? fontname : "fixed"))
745 {
746 delete TermWin.fontset;
747 TermWin.fontset = fs;
748 TermWin.fwidth = fs->base_font ()->width;
749 TermWin.fheight = fs->base_font ()->height;
750 TermWin.fbase = fs->base_font ()->ascent;
751
752 if (TermWin.parent[0])
753 {
754 resize_all_windows (0, 0, 0);
755 scr_remap_chars ();
756 scr_touch (true);
757 }
758
759 return true;
760 }
761 }
762
763 return false;
764}
765
766bool
725rxvt_term::font_up_down (int n, int direction) 767rxvt_term::font_up_down (int n, int direction)
726{} 768{
769 return false;
770}
727 771
728/*----------------------------------------------------------------------*/ 772/*----------------------------------------------------------------------*/
729/*----------------------------------------------------------------------*/ 773/*----------------------------------------------------------------------*/
730/* xterm sequences - title, iconName, color (exptl) */ 774/* xterm sequences - title, iconName, color (exptl) */
731void 775void
732rxvt_term::set_title (const char *str) 776rxvt_term::set_title (const char *str)
733{ 777{
734#ifndef SMART_WINDOW_TITLE 778#ifndef SMART_WINDOW_TITLE
735 XStoreName (display->display, TermWin.parent[0], str); 779 XStoreName (display->display, TermWin.parent[0], str);
736#else 780#else
737 char *name; 781 char *name;
738 782
739 if (XFetchName (display->display, TermWin.parent[0], &name) == 0) 783 if (XFetchName (display->display, TermWin.parent[0], &name) == 0)
740 name = NULL; 784 name = NULL;
741 if (name == NULL || STRCMP (name, str)) 785 if (name == NULL || STRCMP (name, str))
742 XStoreName (display->display, TermWin.parent[0], str); 786 XStoreName (display->display, TermWin.parent[0], str);
749rxvt_term::set_iconName (const char *str) 793rxvt_term::set_iconName (const char *str)
750{ 794{
751#ifndef SMART_WINDOW_TITLE 795#ifndef SMART_WINDOW_TITLE
752 XSetIconName (display->display, TermWin.parent[0], str); 796 XSetIconName (display->display, TermWin.parent[0], str);
753#else 797#else
754 char *name; 798 char *name;
755 799
756 if (XGetIconName (display->display, TermWin.parent[0], &name)) 800 if (XGetIconName (display->display, TermWin.parent[0], &name))
757 name = NULL; 801 name = NULL;
758 if (name == NULL || STRCMP (name, str)) 802 if (name == NULL || STRCMP (name, str))
759 XSetIconName (display->display, TermWin.parent[0], str); 803 XSetIconName (display->display, TermWin.parent[0], str);
764 808
765#ifdef XTERM_COLOR_CHANGE 809#ifdef XTERM_COLOR_CHANGE
766void 810void
767rxvt_term::set_window_color (int idx, const char *color) 811rxvt_term::set_window_color (int idx, const char *color)
768{ 812{
769 rxvt_color xcol; 813 rxvt_color xcol;
770 int i; 814 int i;
771 815
772 if (color == NULL || *color == '\0') 816 if (color == NULL || *color == '\0')
773 return; 817 return;
774 818
775 /* handle color aliases */ 819 /* handle color aliases */
992 0, TermWin_TotalWidth (), menuBar_TotalHeight ()); 1036 0, TermWin_TotalWidth (), menuBar_TotalHeight ());
993 1037
994 XMoveResizeWindow (display->display, TermWin.vt, window_vt_x, 1038 XMoveResizeWindow (display->display, TermWin.vt, window_vt_x,
995 window_vt_y, TermWin_TotalWidth (), 1039 window_vt_y, TermWin_TotalWidth (),
996 TermWin_TotalHeight ()); 1040 TermWin_TotalHeight ());
997 scr_clear (); 1041 scr_clear (height != old_height);
998#ifdef XPM_BACKGROUND 1042#ifdef XPM_BACKGROUND
999 resize_pixmap (); 1043 resize_pixmap ();
1000#endif 1044#endif
1001 1045
1002 } 1046 }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines