Mercurial > emacs
changeset 5801:af397aaa8e6b
(init_frame_faces): Clear FRAME_N_COMPUTED_FACES
and FRAME_SIZE_COMPUTED_FACES.
(compute_glyph_face): New arg CURRENT_FACE specifies face to merge with.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 06 Feb 1994 08:05:58 +0000 |
parents | 295e342614a4 |
children | 3db75b13c7f5 |
files | src/xfaces.c |
diffstat | 1 files changed, 13 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xfaces.c Sun Feb 06 08:04:54 1994 +0000 +++ b/src/xfaces.c Sun Feb 06 08:05:58 1994 +0000 @@ -481,6 +481,9 @@ ensure_face_ready (f, 0); ensure_face_ready (f, 1); + FRAME_N_COMPUTED_FACES (f) = 0; + FRAME_SIZE_COMPUTED_FACES (f) = 0; + new_computed_face (f, FRAME_PARAM_FACES (f)[0]); new_computed_face (f, FRAME_PARAM_FACES (f)[1]); recompute_basic_faces (f); @@ -569,11 +572,10 @@ int new_size = i + 32; FRAME_COMPUTED_FACES (f) - = (struct face **) - (FRAME_SIZE_COMPUTED_FACES (f) == 0 - ? xmalloc (new_size * sizeof (struct face *)) - : xrealloc (FRAME_COMPUTED_FACES (f), - new_size * sizeof (struct face *))); + = (struct face **) (FRAME_SIZE_COMPUTED_FACES (f) == 0 + ? xmalloc (new_size * sizeof (struct face *)) + : xrealloc (FRAME_COMPUTED_FACES (f), + new_size * sizeof (struct face *))); FRAME_SIZE_COMPUTED_FACES (f) = new_size; } @@ -887,15 +889,16 @@ /* Return the face ID to use to display a special glyph which selects FACE_CODE as the face ID, assuming that ordinarily the face would - be BASIC_FACE. F is the frame. */ + be CURRENT_FACE. F is the frame. */ + int -compute_glyph_face (f, face_code) +compute_glyph_face (f, face_code, current_face) struct frame *f; - int face_code; + int face_code, current_face; { struct face face; - compute_base_face (f, &face); + face = *FRAME_COMPUTED_FACES (f)[current_face]; if (face_code >= 0 && face_code < FRAME_N_PARAM_FACES (f) && FRAME_PARAM_FACES (f) [face_code] != 0) @@ -908,6 +911,7 @@ /* Recompute the GC's for the default and modeline faces. We call this after changing frame parameters on which those GC's depend. */ + void recompute_basic_faces (f) FRAME_PTR f;