comparison lisp/wid-edit.el @ 42355:6a1a8da1ad47

(widget-toggle-value-create): Don't eval actual images (which are lists too).
author Miles Bader <miles@gnu.org>
date Thu, 27 Dec 2001 15:07:21 +0000
parents 541b53a03028
children 0cfd64a10789
comparison
equal deleted inserted replaced
42354:97b1dcf7ef60 42355:6a1a8da1ad47
1999 :off "off") 1999 :off "off")
2000 2000
2001 (defun widget-toggle-value-create (widget) 2001 (defun widget-toggle-value-create (widget)
2002 "Insert text representing the `on' and `off' states." 2002 "Insert text representing the `on' and `off' states."
2003 (if (widget-value widget) 2003 (if (widget-value widget)
2004 (progn 2004 (let ((image (widget-get widget :on-glyph)))
2005 (and (display-graphic-p) 2005 (and (display-graphic-p)
2006 (listp (widget-get widget :on-glyph)) 2006 (listp image)
2007 (widget-put widget :on-glyph 2007 (not (eq (car image) 'image))
2008 (eval (widget-get widget :on-glyph)))) 2008 (widget-put widget :on-glyph (setq image (eval image))))
2009 (widget-image-insert widget 2009 (widget-image-insert widget
2010 (widget-get widget :on) 2010 (widget-get widget :on)
2011 (widget-get widget :on-glyph))) 2011 image))
2012 (and (display-graphic-p) 2012 (let ((image (widget-get widget :off-glyph)))
2013 (listp (widget-get widget :off-glyph)) 2013 (and (display-graphic-p)
2014 (widget-put widget :off-glyph 2014 (listp image)
2015 (eval (widget-get widget :off-glyph)))) 2015 (not (eq (car image) 'image))
2016 (widget-image-insert widget 2016 (widget-put widget :off-glyph (setq image (eval image))))
2017 (widget-get widget :off) 2017 (widget-image-insert widget (widget-get widget :off) image))))
2018 (widget-get widget :off-glyph))))
2019 2018
2020 (defun widget-toggle-action (widget &optional event) 2019 (defun widget-toggle-action (widget &optional event)
2021 ;; Toggle value. 2020 ;; Toggle value.
2022 (widget-value-set widget (not (widget-value widget))) 2021 (widget-value-set widget (not (widget-value widget)))
2023 (widget-apply widget :notify widget event) 2022 (widget-apply widget :notify widget event)