comparison src/xfaces.c @ 66983:79256abc393d

(Fface_attribute_relative_p, Fmerge_face_attribute): Handle Qignore_defface as a possible value.
author Chong Yidong <cyd@stupidchicken.com>
date Fri, 18 Nov 2005 03:55:45 +0000
parents c52c20ff739f
children 095993a59ddd 03335deca80b
comparison
equal deleted inserted replaced
66982:99199f06f44c 66983:79256abc393d
4792 2, 2, 0, 4792 2, 2, 0,
4793 doc: /* Return non-nil if face ATTRIBUTE VALUE is relative. */) 4793 doc: /* Return non-nil if face ATTRIBUTE VALUE is relative. */)
4794 (attribute, value) 4794 (attribute, value)
4795 Lisp_Object attribute, value; 4795 Lisp_Object attribute, value;
4796 { 4796 {
4797 if (EQ (value, Qunspecified)) 4797 if (EQ (value, Qunspecified) || (EQ (value, Qignore_defface)))
4798 return Qt; 4798 return Qt;
4799 else if (EQ (attribute, QCheight)) 4799 else if (EQ (attribute, QCheight))
4800 return INTEGERP (value) ? Qnil : Qt; 4800 return INTEGERP (value) ? Qnil : Qt;
4801 else 4801 else
4802 return Qnil; 4802 return Qnil;
4808 If VALUE1 or VALUE2 are absolute (see `face-attribute-relative-p'), then 4808 If VALUE1 or VALUE2 are absolute (see `face-attribute-relative-p'), then
4809 the result will be absolute, otherwise it will be relative. */) 4809 the result will be absolute, otherwise it will be relative. */)
4810 (attribute, value1, value2) 4810 (attribute, value1, value2)
4811 Lisp_Object attribute, value1, value2; 4811 Lisp_Object attribute, value1, value2;
4812 { 4812 {
4813 if (EQ (value1, Qunspecified)) 4813 if (EQ (value1, Qunspecified) || EQ (value1, Qignore_defface))
4814 return value2; 4814 return value2;
4815 else if (EQ (attribute, QCheight)) 4815 else if (EQ (attribute, QCheight))
4816 return merge_face_heights (value1, value2, value1); 4816 return merge_face_heights (value1, value2, value1);
4817 else 4817 else
4818 return value1; 4818 return value1;