diff options
author | Joakim Verona <joakim@verona.se> | 2012-03-25 22:04:52 +0200 |
---|---|---|
committer | Joakim Verona <joakim@verona.se> | 2012-03-25 22:04:52 +0200 |
commit | 75da28a3845b9dfa4e730cfa19c14edc52cbb222 (patch) | |
tree | b04519bffcb21264cbe3ce8af13df7186548667f /lisp/cus-theme.el | |
parent | b827329a89291ed68dd017c53976be7ce5ed3b22 (diff) | |
parent | f514f6f0e3f8bbeb5212d0337e5bda5a9a4eaeb5 (diff) | |
download | emacs-75da28a3845b9dfa4e730cfa19c14edc52cbb222.tar.gz emacs-75da28a3845b9dfa4e730cfa19c14edc52cbb222.tar.bz2 emacs-75da28a3845b9dfa4e730cfa19c14edc52cbb222.zip |
upstream
Diffstat (limited to 'lisp/cus-theme.el')
-rw-r--r-- | lisp/cus-theme.el | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/lisp/cus-theme.el b/lisp/cus-theme.el index 79799049378..606033f915c 100644 --- a/lisp/cus-theme.el +++ b/lisp/cus-theme.el @@ -81,7 +81,9 @@ Do not call this mode function yourself. It is meant for internal use." (defun customize-create-theme (&optional theme buffer) "Create or edit a custom theme. THEME, if non-nil, should be an existing theme to edit. If THEME -is `user', provide an option to remove these as custom settings. +is `user', the resulting *Custom Theme* buffer also contains a +checkbox for removing the theme settings specified in the buffer +from the Custom save file. BUFFER, if non-nil, should be a buffer to use; the default is named *Custom Theme*." (interactive) @@ -209,6 +211,8 @@ remove them from your saved Custom file.\n\n")) (message ""))) (defun custom-theme-revert (_ignore-auto noconfirm) + "Revert the current *Custom Theme* buffer. +This is the `revert-buffer-function' for `custom-new-theme-mode'." (when (or noconfirm (y-or-n-p "Discard current changes? ")) (customize-create-theme custom-theme--save-name (current-buffer)))) @@ -437,14 +441,17 @@ It includes all faces in list FACES." (princ theme) (princ "\n") (dolist (spec faces) + ;; Insert the face iff the checkbox widget is checked. (when (widget-get (nth 1 spec) :value) (let* ((symbol (nth 0 spec)) (widget (nth 2 spec)) (value - (if (car-safe (widget-get widget :children)) - (custom-face-widget-to-spec widget) - ;; Child is null if the widget is closed (hidden). - (widget-get widget :shown-value)))) + (cond + ((car-safe (widget-get widget :children)) + (custom-face-widget-to-spec widget)) + ;; Child is null if the widget is closed (hidden). + ((widget-get widget :shown-value)) + (t (custom-face-get-current-spec symbol))))) (when (and (facep symbol) value) (princ (if (bolp) " '(" "\n '(")) (prin1 symbol) |