comparison lisp/x-faces.el @ 5624:c39052c921b5

New "foreback" face property. -------------------- ChangeLog entries follow: -------------------- lisp/ChangeLog addition: 2011-12-27 Didier Verna <didier@xemacs.org> * cl-macs.el (face-foreback): New defsetf. * faces.el (set-face-property): Document the foreback property. * faces.el (face-foreback): * faces.el (face-foreback-instance): * faces.el (face-foreback-name): * faces.el (set-face-foreback): New functions. * faces.el (face-equal): * faces.el (init-other-random-faces): * cus-face.el (custom-face-attributes): * x-faces.el (x-init-face-from-resources): Handle the foreback property. src/ChangeLog addition: 2011-12-27 Didier Verna <didier@xemacs.org> * faces.h (struct Lisp_Face): New 'foreback slot. * faces.h (struct face_cachel): New 'foreback and 'foreback_specified slots. * faces.h (WINDOW_FACE_CACHEL_FOREBACK): * faces.h (FACE_FOREBACK): New macros. * faces.c: Declare Qforeback. * lisp.h: Externalize it. * faces.c (syms_of_faces): Define it. * faces.c (vars_of_faces): Update built-in face specifiers. * faces.c (complex_vars_of_faces): Update specifier fallbacks. * faces.c (mark_face): * faces.c (face_equal): * faces.c (face_getprop): * faces.c (face_putprop): * faces.c (face_remprop): * faces.c (face_plist): * faces.c (reset_face): * faces.c (update_face_inheritance_mapper): * faces.c (Fmake_face): * faces.c (mark_face_cachels): * faces.c (update_face_cachel_data): * faces.c (merge_face_cachel_data): * faces.c (reset_face_cachel): * faces.c (face_property_was_changed): * faces.c (Fcopy_face): * fontcolor.c (face_color_validate): Handle the foreback property. * redisplay-msw.c (mswindows_output_blank): * redisplay-msw.c (mswindows_output_string): * redisplay-output.c (redisplay_clear_region): * redisplay-xlike-inc.c (XLIKE_output_string): * redisplay-xlike-inc.c (XLIKE_output_blank): Use the face's foreback color instead of the foreground one for drawing a background bitmap.
author Didier Verna <didier@xemacs.org>
date Tue, 27 Dec 2011 17:07:23 +0100
parents 75ad4969a16d
children
comparison
equal deleted inserted replaced
5623:444713e89160 5624:c39052c921b5
696 'string locale)) 696 'string locale))
697 (fg (x-get-resource-and-maybe-bogosity-check 697 (fg (x-get-resource-and-maybe-bogosity-check
698 (concat name ".attributeForeground") 698 (concat name ".attributeForeground")
699 "Face.AttributeForeground" 699 "Face.AttributeForeground"
700 'string locale)) 700 'string locale))
701 (fb (x-get-resource-and-maybe-bogosity-check
702 (concat name ".attributeForeback")
703 "Face.AttributeForeback"
704 'string locale))
701 (bg (x-get-resource-and-maybe-bogosity-check 705 (bg (x-get-resource-and-maybe-bogosity-check
702 (concat name ".attributeBackground") 706 (concat name ".attributeBackground")
703 "Face.AttributeBackground" 707 "Face.AttributeBackground"
704 'string locale)) 708 'string locale))
705 (bgp (x-get-resource-and-maybe-bogosity-check 709 (bgp (x-get-resource-and-maybe-bogosity-check
813 (remove-specifier-specs-matching-tag-set-cdrs (face-foreground face) 817 (remove-specifier-specs-matching-tag-set-cdrs (face-foreground face)
814 locale 818 locale
815 x-tag-set) 819 x-tag-set)
816 (remove-specifier (face-foreground face) locale x-tag-set nil)) 820 (remove-specifier (face-foreground face) locale x-tag-set nil))
817 (set-face-foreground face fg locale our-tag-set append)) 821 (set-face-foreground face fg locale our-tag-set append))
822 (when fb
823 (if device-class
824 (remove-specifier-specs-matching-tag-set-cdrs (face-foreback face)
825 locale
826 x-tag-set)
827 (remove-specifier (face-foreback face) locale x-tag-set nil))
828 (set-face-foreback face fb locale our-tag-set append))
818 (when bg 829 (when bg
819 (if device-class 830 (if device-class
820 (remove-specifier-specs-matching-tag-set-cdrs (face-background face) 831 (remove-specifier-specs-matching-tag-set-cdrs (face-background face)
821 locale 832 locale
822 x-tag-set) 833 x-tag-set)