]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid inline image variables for checkboxes (Bug#7222).
authorChong Yidong <cyd@stupidchicken.com>
Sun, 24 Oct 2010 23:40:55 +0000 (19:40 -0400)
committerChong Yidong <cyd@stupidchicken.com>
Sun, 24 Oct 2010 23:40:55 +0000 (19:40 -0400)
* etc/images/checked.xpm:
* etc/images/unchecked.xpm: New images.

* image.el (image-checkbox-checked, image-checkbox-unchecked):
Deleted (Bug#7222).

* startup.el (fancy-startup-tail): Instead of using inline images,
refer to image files from etc/.

* wid-edit.el (checkbox): Likewise.
(widget-image-find): Center image specs.

etc/ChangeLog
etc/images/checked.xpm [new file with mode: 0644]
etc/images/unchecked.xpm [new file with mode: 0644]
lisp/ChangeLog
lisp/image.el
lisp/startup.el
lisp/wid-edit.el

index ce5ec4cdff9b0879c97bdda2e76cd5b51d7f96da..4d074790f227cc3d2c67ae580dd935944fa388d6 100644 (file)
@@ -1,3 +1,8 @@
+2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
+
+       * images/checked.xpm:
+       * images/unchecked.xpm: New images.
+
 2010-10-20  Richard Stallman  <rms@gnu.org>
 
        * DISTRIB: Update donation section.
diff --git a/etc/images/checked.xpm b/etc/images/checked.xpm
new file mode 100644 (file)
index 0000000..4dbcb9e
--- /dev/null
@@ -0,0 +1,20 @@
+/* XPM */
+static char * checked_xpm[] = {
+"12 12 5 1",
+"      c None",
+".     c gray20",
+"+     c white",
+"@     c gray70",
+"#     c black",
+"............",
+"............",
+"..@@@@@@##+.",
+"..@@@@@@##+.",
+"..#@@@@##@+.",
+"..##@@@##@+.",
+"..###@##@@+.",
+"..@#####@@+.",
+"..@@###@@@+.",
+"..@++##++++.",
+".@+++++++++.",
+"............"};
diff --git a/etc/images/unchecked.xpm b/etc/images/unchecked.xpm
new file mode 100644 (file)
index 0000000..85eec75
--- /dev/null
@@ -0,0 +1,20 @@
+/* XPM */
+static char * unchecked_xpm[] = {
+"12 12 5 1",
+"      c None",
+".     c gray20",
+"+     c white",
+"@     c gray70",
+"#     c black",
+"............",
+"............",
+"..@@@@@@@@+.",
+"..@@@@@@@@+.",
+"..@@@@@@@@+.",
+"..@@@@@@@@+.",
+"..@@@@@@@@+.",
+"..@@@@@@@@+.",
+"..@@@@@@@@+.",
+"..@++++++++.",
+".@+++++++++.",
+"............"};
index 026aa993afe2e8e92c0c81e151964a8d1ba7ac7b..9fd13d49ca450bf01c088438bd01a6d9c5a9d323 100644 (file)
@@ -1,3 +1,14 @@
+2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
+
+       * image.el (image-checkbox-checked, image-checkbox-unchecked):
+       Deleted (Bug#7222).
+
+       * startup.el (fancy-startup-tail): Instead of using inline images,
+       refer to image files from etc/.
+
+       * wid-edit.el (checkbox): Likewise.
+       (widget-image-find): Center image specs.
+
 2010-10-24  Glenn Morris  <rgm@gnu.org>
 
        * term/ns-win.el (x-select-text): Doc fix.
index 0afdc71cb9ed2eb696bedfbd1428c3c15f358fa8..f93fd03fba35d041f806fa82a9eb436963f05097 100644 (file)
@@ -723,21 +723,6 @@ shall be displayed."
         (cons (concat "\\." extension "\\'") 'imagemagick)
         image-type-file-name-regexps)))))
 
-\f
-;;; Inline stock images
-
-(defvar image-checkbox-checked
-  (create-image "\300\300\141\143\067\076\034\030"
-               'xbm t :width 8 :height 8 :background "grey75"
-               :foreground "black" :relief -2 :ascent 'center)
-  "Image of a checked checkbox.")
-
-(defvar image-checkbox-unchecked
-  (create-image (make-string 8 0)
-               'xbm t :width 8 :height 8 :background "grey75"
-               :foreground "black" :relief -2 :ascent 'center)
-  "Image of an unchecked checkbox.")
-
 (provide 'image)
 
 ;; arch-tag: 8e76a07b-eb48-4f3e-a7a0-1a7ba9f096b3
index aa791f2a04a988a30c72066406a09f94620e4b70..a6ba865ce103ec8240cb94527a8da5600089101e 100644 (file)
@@ -1563,21 +1563,26 @@ a face or button specification."
                 (kill-buffer "*GNU Emacs*")))
        "  ")
       (when (or user-init-file custom-file)
-       (insert-button
-        " "
-        :on-glyph image-checkbox-checked
-        :off-glyph image-checkbox-unchecked
-        'checked nil 'display image-checkbox-unchecked 'follow-link t
-        'action (lambda (button)
-                  (if (overlay-get button 'checked)
-                      (progn (overlay-put button 'checked nil)
-                             (overlay-put button 'display
-                                          (overlay-get button :off-glyph))
-                             (setq startup-screen-inhibit-startup-screen nil))
-                    (overlay-put button 'checked t)
-                    (overlay-put button 'display
-                                 (overlay-get button :on-glyph))
-                    (setq startup-screen-inhibit-startup-screen t))))
+       (let ((checked (create-image "checked.xpm"
+                                    nil nil :ascent 'center))
+             (unchecked (create-image "unchecked.xpm"
+                                      nil nil :ascent 'center)))
+         (insert-button
+          " "
+          :on-glyph checked
+          :off-glyph unchecked
+          'checked nil 'display unchecked 'follow-link t
+          'action (lambda (button)
+                    (if (overlay-get button 'checked)
+                        (progn (overlay-put button 'checked nil)
+                               (overlay-put button 'display
+                                            (overlay-get button :off-glyph))
+                               (setq startup-screen-inhibit-startup-screen
+                                     nil))
+                      (overlay-put button 'checked t)
+                      (overlay-put button 'display
+                                   (overlay-get button :on-glyph))
+                      (setq startup-screen-inhibit-startup-screen t)))))
        (fancy-splash-insert :face '(variable-pitch (:height 0.9))
                             " Never show it again.")))))
 
index 3b9a0372de5e2eccc0c861cdb04ec41cc51273cd..e905e8f2a87fa68b0ffdbd4b349d0add9be2101c 100644 (file)
@@ -638,7 +638,8 @@ extension (xpm, xbm, gif, jpg, or png) located in
                specs)
           (dolist (elt widget-image-conversion)
             (dolist (ext (cdr elt))
-              (push (list :type (car elt) :file (concat image ext)) specs)))
+              (push (list :type (car elt) :file (concat image ext)
+                          :ascent 'center) specs)))
           (find-image (nreverse specs))))
        (t
         ;; Oh well.
@@ -2195,9 +2196,9 @@ when he invoked the menu."
   ;; 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 image-checkbox-checked
+  :on-glyph "checked"
   :off "[ ]"
-  :off-glyph image-checkbox-unchecked
+  :off-glyph "unchecked"
   :help-echo "Toggle this item."
   :action 'widget-checkbox-action)