summaryrefslogtreecommitdiff
path: root/lisp/cus-theme.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/cus-theme.el')
-rw-r--r--lisp/cus-theme.el54
1 files changed, 30 insertions, 24 deletions
diff --git a/lisp/cus-theme.el b/lisp/cus-theme.el
index 0a421da925c..afb760a7d4e 100644
--- a/lisp/cus-theme.el
+++ b/lisp/cus-theme.el
@@ -156,18 +156,21 @@ the directory " custom-theme-directory "\n\n")
(interactive "vVariable name: ")
(save-excursion
(goto-char custom-theme-insert-variable-marker)
- (if (assq symbol custom-theme-variables)
- (message "%s is already in the theme" (symbol-name symbol))
- (widget-insert "\n")
- (let ((widget (widget-create 'custom-variable
- :tag (custom-unlispify-tag-name symbol)
- :custom-level 0
- :action 'custom-theme-variable-action
- :custom-state 'unknown
- :value symbol)))
- (push (cons symbol widget) custom-theme-variables)
- (custom-magic-reset widget))
- (widget-setup))))
+ (cond ((assq symbol custom-theme-variables)
+ (message "%s is already in the theme" (symbol-name symbol)))
+ ((not (boundp symbol))
+ (message "%s is not defined as a variable" (symbol-name symbol)))
+ (t
+ (widget-insert "\n")
+ (let ((widget (widget-create 'custom-variable
+ :tag (custom-unlispify-tag-name symbol)
+ :custom-level 0
+ :action 'custom-theme-variable-action
+ :custom-state 'unknown
+ :value symbol)))
+ (push (cons symbol widget) custom-theme-variables)
+ (custom-magic-reset widget))
+ (widget-setup)))))
(defvar custom-theme-variable-menu
`(("Reset to Current" custom-redraw
@@ -222,18 +225,21 @@ Optional EVENT is the location for the menu."
(interactive (list (read-face-name "Face name" nil nil)))
(save-excursion
(goto-char custom-theme-insert-face-marker)
- (if (assq symbol custom-theme-faces)
- (message "%s is already in the theme" (symbol-name symbol))
- (widget-insert "\n")
- (let ((widget (widget-create 'custom-face
- :tag (custom-unlispify-tag-name symbol)
- :custom-level 0
- :action 'custom-theme-face-action
- :custom-state 'unknown
- :value symbol)))
- (push (cons symbol widget) custom-theme-faces)
- (custom-magic-reset widget)
- (widget-setup)))))
+ (cond ((assq symbol custom-theme-faces)
+ (message "%s is already in the theme" (symbol-name symbol)))
+ ((not (facep symbol))
+ (message "%s is not defined as a face" (symbol-name symbol)))
+ (t
+ (widget-insert "\n")
+ (let ((widget (widget-create 'custom-face
+ :tag (custom-unlispify-tag-name symbol)
+ :custom-level 0
+ :action 'custom-theme-face-action
+ :custom-state 'unknown
+ :value symbol)))
+ (push (cons symbol widget) custom-theme-faces)
+ (custom-magic-reset widget)
+ (widget-setup))))))
(defvar custom-theme-face-menu
`(("Reset to Theme Value" custom-face-reset-theme