diff options
| author | Kenichi Handa | 2006-07-26 01:16:27 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2006-07-26 01:16:27 +0000 |
| commit | 1a3565711488591bac0e6fd1b5626d20e14effa6 (patch) | |
| tree | 56441abfccc7382457ca1d9e7097ab7975a5a215 /src | |
| parent | 297cc20aff62790288b3d6c804c1ce668a26e6d2 (diff) | |
| download | emacs-1a3565711488591bac0e6fd1b5626d20e14effa6.tar.gz emacs-1a3565711488591bac0e6fd1b5626d20e14effa6.zip | |
(Qfont_backend): New variable.
(frame_parms): New element for font-backend.
(x_set_font_backend): New function.
Diffstat (limited to 'src')
| -rw-r--r-- | src/frame.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/frame.c b/src/frame.c index 1f8c173b9db..6d1df70955f 100644 --- a/src/frame.c +++ b/src/frame.c | |||
| @@ -112,6 +112,9 @@ Lisp_Object Qbuffer_predicate, Qbuffer_list; | |||
| 112 | Lisp_Object Qtty_color_mode; | 112 | Lisp_Object Qtty_color_mode; |
| 113 | 113 | ||
| 114 | Lisp_Object Qfullscreen, Qfullwidth, Qfullheight, Qfullboth; | 114 | Lisp_Object Qfullscreen, Qfullwidth, Qfullheight, Qfullboth; |
| 115 | #ifdef USE_FONT_BACKEND | ||
| 116 | Lisp_Object Qfont_backend; | ||
| 117 | #endif /* USE_FONT_BACKEND */ | ||
| 115 | 118 | ||
| 116 | Lisp_Object Qface_set_after_frame_default; | 119 | Lisp_Object Qface_set_after_frame_default; |
| 117 | 120 | ||
| @@ -2587,6 +2590,9 @@ static struct frame_parm_table frame_parms[] = | |||
| 2587 | {"right-fringe", &Qright_fringe}, | 2590 | {"right-fringe", &Qright_fringe}, |
| 2588 | {"wait-for-wm", &Qwait_for_wm}, | 2591 | {"wait-for-wm", &Qwait_for_wm}, |
| 2589 | {"fullscreen", &Qfullscreen}, | 2592 | {"fullscreen", &Qfullscreen}, |
| 2593 | #ifdef USE_FONT_BACKEND | ||
| 2594 | {"font-backend", &Qfont_backend} | ||
| 2595 | #endif /* USE_FONT_BACKEND */ | ||
| 2590 | }; | 2596 | }; |
| 2591 | 2597 | ||
| 2592 | #ifdef HAVE_WINDOW_SYSTEM | 2598 | #ifdef HAVE_WINDOW_SYSTEM |
| @@ -3167,6 +3173,39 @@ x_set_font (f, arg, oldval) | |||
| 3167 | } | 3173 | } |
| 3168 | 3174 | ||
| 3169 | 3175 | ||
| 3176 | #ifdef USE_FONT_BACKEND | ||
| 3177 | void | ||
| 3178 | x_set_font_backend (f, new_value, old_value) | ||
| 3179 | struct frame *f; | ||
| 3180 | Lisp_Object new_value, old_value; | ||
| 3181 | { | ||
| 3182 | Lisp_Object frame; | ||
| 3183 | |||
| 3184 | if (! NILP (new_value) | ||
| 3185 | && !CONSP (new_value)) | ||
| 3186 | { | ||
| 3187 | char *p0, *p1; | ||
| 3188 | |||
| 3189 | CHECK_STRING (new_value); | ||
| 3190 | p0 = p1 = SDATA (new_value); | ||
| 3191 | new_value = Qnil; | ||
| 3192 | while (*p0) | ||
| 3193 | { | ||
| 3194 | while (*p1 && *p1 != ',') p1++; | ||
| 3195 | if (p0 < p1) | ||
| 3196 | new_value = Fcons (Fintern (make_string (p0, p1 - p0), Qnil), | ||
| 3197 | new_value); | ||
| 3198 | if (*p1) | ||
| 3199 | p1++; | ||
| 3200 | p0 = p1; | ||
| 3201 | } | ||
| 3202 | } | ||
| 3203 | |||
| 3204 | font_update_drivers (f, new_value, FRAME_FONT_OBJECT (f)); | ||
| 3205 | } | ||
| 3206 | #endif /* USE_FONT_BACKEND */ | ||
| 3207 | |||
| 3208 | |||
| 3170 | void | 3209 | void |
| 3171 | x_set_fringe_width (f, new_value, old_value) | 3210 | x_set_fringe_width (f, new_value, old_value) |
| 3172 | struct frame *f; | 3211 | struct frame *f; |