]> git.eshelyaron.com Git - emacs.git/commitdiff
(cpp-face): New widget.
authorJuri Linkov <juri@jurta.org>
Wed, 14 Dec 2005 07:48:11 +0000 (07:48 +0000)
committerJuri Linkov <juri@jurta.org>
Wed, 14 Dec 2005 07:48:11 +0000 (07:48 +0000)
(cpp-known-face, cpp-unknown-face, cpp-edit-list): Use it.

lisp/ChangeLog
lisp/progmodes/cpp.el

index 999f8807902e702d5faf130e5c436d5431f9b6b5..f1aecc274268c08093a55af1a0c3740d458a7bd5 100644 (file)
@@ -1,3 +1,8 @@
+2005-12-14  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+       * progmodes/cpp.el (cpp-face): New widget.
+       (cpp-known-face, cpp-unknown-face, cpp-edit-list): Use it.
+
 2005-12-14  Juri Linkov  <juri@jurta.org>
 
        * help-macro.el (make-help-screen): Bind `inhibit-read-only' to t
index 11d0ba444f37030e48318b99f642a88e65bec2f7..7e0bb8b4f9bb9e92a2996d874cbcf7424da8fa8a 100644 (file)
   :type 'file
   :group 'cpp)
 
+(define-widget 'cpp-face 'lazy
+  "Either a face or the special symbol 'invisible'."
+  :type '(choice (const invisible) (face)))
+
 (defcustom cpp-known-face 'invisible
   "*Face used for known cpp symbols."
-  :type 'face
+  :type 'cpp-face
   :group 'cpp)
 
 (defcustom cpp-unknown-face 'highlight
   "*Face used for unknown cpp symbols."
-  :type 'face
+  :type 'cpp-face
   :group 'cpp)
 
 (defcustom cpp-face-type 'light
@@ -95,10 +99,12 @@ Each entry is a list with the following elements:
 1. Face used for text that is `ifdef' the macro.
 2. Face used for text that is `ifndef' the macro.
 3. t, nil, or `both' depending on what text may be edited."
-  :type '(repeat (list string face face
-                      (choice (const t)
-                              (const nil)
-                              (const both))))
+  :type '(repeat (list (string :tag "Macro")
+                      (cpp-face :tag "True")
+                      (cpp-face :tag "False")
+                      (choice (const :tag "True branch writable" t)
+                              (const :tag "False branch writeable" nil)
+                              (const :tag "Both branches writeable" both))))
   :group 'cpp)
 
 (defvar cpp-overlay-list nil)