Mercurial > hg > xemacs-beta
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 |