diff options
| author | Gerd Moellmann | 2000-09-07 09:51:06 +0000 |
|---|---|---|
| committer | Gerd Moellmann | 2000-09-07 09:51:06 +0000 |
| commit | 628436fbc6e5ce107124f245b988a7f853b7ca31 (patch) | |
| tree | fd065e9b9817ff2757a173fb2735dddeec0fc336 /src | |
| parent | 70a267c9b5ba42f7908b31286de055046c6df907 (diff) | |
| download | emacs-628436fbc6e5ce107124f245b988a7f853b7ca31.tar.gz emacs-628436fbc6e5ce107124f245b988a7f853b7ca31.zip | |
(Finternal_set_lisp_face_attribute): If FRAME is 0,
change face on all frames, and change the default for new frames.
Diffstat (limited to 'src')
| -rw-r--r-- | src/xfaces.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/xfaces.c b/src/xfaces.c index ca7df408c2c..84f43d81d69 100644 --- a/src/xfaces.c +++ b/src/xfaces.c | |||
| @@ -3631,10 +3631,11 @@ Value is TO.") | |||
| 3631 | DEFUN ("internal-set-lisp-face-attribute", Finternal_set_lisp_face_attribute, | 3631 | DEFUN ("internal-set-lisp-face-attribute", Finternal_set_lisp_face_attribute, |
| 3632 | Sinternal_set_lisp_face_attribute, 3, 4, 0, | 3632 | Sinternal_set_lisp_face_attribute, 3, 4, 0, |
| 3633 | "Set attribute ATTR of FACE to VALUE.\n\ | 3633 | "Set attribute ATTR of FACE to VALUE.\n\ |
| 3634 | If optional argument FRAME is given, set the face attribute of face FACE\n\ | 3634 | FRAME being a frame means change the face on that frame.\n\ |
| 3635 | on that frame. If FRAME is t, set the attribute of the default for face\n\ | 3635 | FRAME nil means change change the face of the selected frame.\n\ |
| 3636 | FACE (for new frames). If FRAME is omitted or nil, use the selected\n\ | 3636 | FRAME t means change the default for new frames.\n\ |
| 3637 | frame.") | 3637 | FRAME 0 means change the face on all frames, and change the default\n\ |
| 3638 | for new frames.") | ||
| 3638 | (face, attr, value, frame) | 3639 | (face, attr, value, frame) |
| 3639 | Lisp_Object face, attr, value, frame; | 3640 | Lisp_Object face, attr, value, frame; |
| 3640 | { | 3641 | { |
| @@ -3650,6 +3651,16 @@ frame.") | |||
| 3650 | 3651 | ||
| 3651 | face = resolve_face_name (face); | 3652 | face = resolve_face_name (face); |
| 3652 | 3653 | ||
| 3654 | /* If FRAME is 0, change face on all frames, and change the | ||
| 3655 | default for new frames. */ | ||
| 3656 | if (INTEGERP (frame) && XINT (frame) == 0) | ||
| 3657 | { | ||
| 3658 | Lisp_Object tail; | ||
| 3659 | FOR_EACH_FRAME (tail, frame) | ||
| 3660 | Finternal_set_lisp_face_attribute (face, attr, value, frame); | ||
| 3661 | return Finternal_set_lisp_face_attribute (face, attr, value, Qt); | ||
| 3662 | } | ||
| 3663 | |||
| 3653 | /* Set lface to the Lisp attribute vector of FACE. */ | 3664 | /* Set lface to the Lisp attribute vector of FACE. */ |
| 3654 | if (EQ (frame, Qt)) | 3665 | if (EQ (frame, Qt)) |
| 3655 | lface = lface_from_face_name (NULL, face, 1); | 3666 | lface = lface_from_face_name (NULL, face, 1); |