# HG changeset patch # User Chong Yidong # Date 1137119403 0 # Node ID fca6909a92e84216b7c2ed48c3ba2e9b280a2c06 # Parent 3cc8c13facd32cc6ad566214e9ee2172ba231ab7 * cus-theme.el (custom-theme-add-variable, custom-theme-add-face): Don't add widget if setting undefined. diff -r 3cc8c13facd3 -r fca6909a92e8 lisp/ChangeLog --- a/lisp/ChangeLog Thu Jan 12 23:13:26 2006 +0000 +++ b/lisp/ChangeLog Fri Jan 13 02:30:03 2006 +0000 @@ -1,3 +1,8 @@ +2006-01-12 Chong Yidong + + * cus-theme.el (custom-theme-add-variable, custom-theme-add-face): + Don't add widget if setting undefined. + 2006-01-12 John Paul Wallington * help-fns.el (describe-variable): Remove newlines from void diff -r 3cc8c13facd3 -r fca6909a92e8 lisp/cus-theme.el --- a/lisp/cus-theme.el Thu Jan 12 23:13:26 2006 +0000 +++ b/lisp/cus-theme.el Fri Jan 13 02:30:03 2006 +0000 @@ -156,18 +156,21 @@ (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 @@ (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