3896 |
DEFUN ("internal-copy-lisp-face", Finternal_copy_lisp_face, |
DEFUN ("internal-copy-lisp-face", Finternal_copy_lisp_face, |
3897 |
Sinternal_copy_lisp_face, 4, 4, 0, |
Sinternal_copy_lisp_face, 4, 4, 0, |
3898 |
doc: /* Copy face FROM to TO. |
doc: /* Copy face FROM to TO. |
3899 |
If FRAME is t, copy the global face definition of FROM to the |
If FRAME is t, copy the global face definition of FROM. |
3900 |
global face definition of TO. Otherwise, copy the frame-local |
Otherwise, copy the frame-local definition of FROM on FRAME. |
3901 |
definition of FROM on FRAME to the frame-local definition of TO |
If NEW-FRAME is a frame, copy that data into the frame-local |
3902 |
on NEW-FRAME, or FRAME if NEW-FRAME is nil. |
definition of TO on NEW-FRAME. If NEW-FRAME is nil. |
3903 |
|
FRAME controls where the data is copied to. |
3904 |
|
|
3905 |
Value is TO. */) |
The value is TO. */) |
3906 |
(from, to, frame, new_frame) |
(from, to, frame, new_frame) |
3907 |
Lisp_Object from, to, frame, new_frame; |
Lisp_Object from, to, frame, new_frame; |
3908 |
{ |
{ |
3910 |
|
|
3911 |
CHECK_SYMBOL (from); |
CHECK_SYMBOL (from); |
3912 |
CHECK_SYMBOL (to); |
CHECK_SYMBOL (to); |
|
if (NILP (new_frame)) |
|
|
new_frame = frame; |
|
3913 |
|
|
3914 |
if (EQ (frame, Qt)) |
if (EQ (frame, Qt)) |
3915 |
{ |
{ |
3921 |
else |
else |
3922 |
{ |
{ |
3923 |
/* Copy frame-local definition of FROM. */ |
/* Copy frame-local definition of FROM. */ |
3924 |
|
if (NILP (new_frame)) |
3925 |
|
new_frame = frame; |
3926 |
CHECK_LIVE_FRAME (frame); |
CHECK_LIVE_FRAME (frame); |
3927 |
CHECK_LIVE_FRAME (new_frame); |
CHECK_LIVE_FRAME (new_frame); |
3928 |
lface = lface_from_face_name (XFRAME (frame), from, 1); |
lface = lface_from_face_name (XFRAME (frame), from, 1); |