# HG changeset patch # User Richard M. Stallman # Date 1006837453 0 # Node ID faa52db1ed5102ca74e438b66d343c011692ef46 # Parent b825c024c5dec49a333f7cc720329f7df69ba9f5 (widget-toggle-value-create): On graphic terminal, if :on-glyph or :off-glyph is a list, eval it and store it back. (checkbox): Quote the values for :on-glyph and :off-glyph. diff -r b825c024c5de -r faa52db1ed51 lisp/wid-edit.el --- a/lisp/wid-edit.el Tue Nov 27 04:59:43 2001 +0000 +++ b/lisp/wid-edit.el Tue Nov 27 05:04:13 2001 +0000 @@ -1996,9 +1996,18 @@ (defun widget-toggle-value-create (widget) "Insert text representing the `on' and `off' states." (if (widget-value widget) - (widget-image-insert widget - (widget-get widget :on) - (widget-get widget :on-glyph)) + (progn + (and (display-graphic-p) + (listp (widget-get widget :on-glyph)) + (widget-put widget :on-glyph + (eval (widget-get widget :on-glyph)))) + (widget-image-insert widget + (widget-get widget :on) + (widget-get widget :on-glyph))) + (and (display-graphic-p) + (listp (widget-get widget :off-glyph)) + (widget-put widget :off-glyph + (eval (widget-get widget :off-glyph)))) (widget-image-insert widget (widget-get widget :off) (widget-get widget :off-glyph)))) @@ -2020,19 +2029,19 @@ ;; We could probably do the same job as the images using single ;; space characters in a boxed face with a stretch specification to ;; make them square. - :on-glyph (create-image "\000\066\076\034\076\066\000" - 'xbm t :width 7 :height 7 - :background "grey75" ; like default mode line - :foreground "black" - :relief -3 - :ascent 'center) + :on-glyph '(create-image "\000\066\076\034\076\066\000" + 'xbm t :width 7 :height 7 + :background "grey75" ; like default mode line + :foreground "black" + :relief -3 + :ascent 'center) :off "[ ]" - :off-glyph (create-image (make-string 7 0) - 'xbm t :width 7 :height 7 - :background "grey75" - :foreground "black" - :relief 3 - :ascent 'center) + :off-glyph '(create-image (make-string 7 0) + 'xbm t :width 7 :height 7 + :background "grey75" + :foreground "black" + :relief 3 + :ascent 'center) :help-echo "Toggle this item." :action 'widget-checkbox-action)