comparison src/frame-x.c @ 3094:ad2f4ae9895b

[xemacs-hg @ 2005-11-26 11:45:47 by stephent] Xft merge. <87k6ev4p8q.fsf@tleepslib.sk.tsukuba.ac.jp>
author stephent
date Sat, 26 Nov 2005 11:46:25 +0000
parents 141c2920ea48
children 374186f156d5
comparison
equal deleted inserted replaced
3093:769dc945b085 3094:ad2f4ae9895b
2623 2623
2624 #ifdef HAVE_CDE 2624 #ifdef HAVE_CDE
2625 DtDndDropUnregister (FRAME_X_TEXT_WIDGET (f)); 2625 DtDndDropUnregister (FRAME_X_TEXT_WIDGET (f));
2626 #endif /* HAVE_CDE */ 2626 #endif /* HAVE_CDE */
2627 2627
2628 #ifdef USE_XFT
2629 /* If we have an XftDraw structure, we need to free it here.
2630 We can't ever have an XftDraw without a Display, so we are safe
2631 to free it in here, and we avoid too much playing around with the
2632 malloc checking hooks this way. */
2633 if (FRAME_X_XFTDRAW (f))
2634 {
2635 XftDrawDestroy (FRAME_X_XFTDRAW (f));
2636 FRAME_X_XFTDRAW (f) = NULL;
2637 }
2638 #endif
2639
2640
2628 assert (FRAME_X_SHELL_WIDGET (f) != 0); 2641 assert (FRAME_X_SHELL_WIDGET (f) != 0);
2629 dpy = XtDisplay (FRAME_X_SHELL_WIDGET (f)); 2642 dpy = XtDisplay (FRAME_X_SHELL_WIDGET (f));
2630 2643
2631 #ifdef EXTERNAL_WIDGET 2644 #ifdef EXTERNAL_WIDGET
2632 expect_x_error (dpy); 2645 expect_x_error (dpy);
2700 } 2713 }
2701 else if (EQ (name, Qfont)) 2714 else if (EQ (name, Qfont))
2702 { 2715 {
2703 Lisp_Object font = FACE_FONT (Vdefault_face, frame, Vcharset_ascii); 2716 Lisp_Object font = FACE_FONT (Vdefault_face, frame, Vcharset_ascii);
2704 2717
2718 /* #### what to do about Xft? I don't think the font is actually used
2719 to compute cell size for computing frame pixel dimensions (see call
2720 to EmacsFrameRecomputeCellSize() below); where is it used? -- sjt
2721 What does XtSetValues() do if that resource isn't present? */
2705 if (!EQ (font, Vthe_null_font_instance)) 2722 if (!EQ (font, Vthe_null_font_instance))
2706 { 2723 {
2707 XtSetArg (al[ac], XtNfont, 2724 if (0)
2708 (void *) FONT_INSTANCE_X_FONT (XFONT_INSTANCE (font))); 2725 ;
2709 ac++; 2726 #ifdef USE_XFT
2727 else if (FONT_INSTANCE_X_XFTFONT (XFONT_INSTANCE (font)))
2728 {
2729 XtSetArg (al[ac], XtNxftFont,
2730 (void *) FONT_INSTANCE_X_XFTFONT (XFONT_INSTANCE (font)));
2731 ac++;
2732 }
2733 #endif
2734 else if (FONT_INSTANCE_X_FONT (XFONT_INSTANCE (font)))
2735 {
2736 XtSetArg (al[ac], XtNfont,
2737 (void *) FONT_INSTANCE_X_FONT (XFONT_INSTANCE (font)));
2738 ac++;
2739 }
2710 } 2740 }
2711 } 2741 }
2712 else 2742 else
2713 ABORT (); 2743 ABORT ();
2714 2744