changeset 105198:550b90cc7226

(rmail-mime-bulk-handler): Print the size of attachments.
author Glenn Morris <rgm@gnu.org>
date Fri, 25 Sep 2009 06:15:01 +0000
parents 3ed1736067e6
children 8b6d9d4b0bf1
files lisp/ChangeLog lisp/mail/rmailmm.el
diffstat 2 files changed, 12 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Fri Sep 25 04:46:34 2009 +0000
+++ b/lisp/ChangeLog	Fri Sep 25 06:15:01 2009 +0000
@@ -30,7 +30,8 @@
 	(rmail-mime-insert-image): New function.
 	(rmail-mime-image): Use rmail-mime-insert-image.
 	(rmail-mime-bulk-handler): Remove optional `image' argument, instead
-	obey the value of `rmail-mime-show-images' option.
+	obey the value of `rmail-mime-show-images' option.  Print the size of
+	attachments.
 
 2009-09-25  David Engster  <deng@randomsample.de>
 
--- a/lisp/mail/rmailmm.el	Fri Sep 25 04:46:34 2009 +0000
+++ b/lisp/mail/rmailmm.el	Fri Sep 25 06:15:01 2009 +0000
@@ -177,7 +177,14 @@
 		       "noname"))
 	 (label (format "\nAttached %s file: " (car content-type)))
 	 (data (buffer-string))
+	 (udata (string-as-unibyte data))
+	 (size (length udata))
+	 (units '(B kB MB GB))
 	 type)
+    (while (and (> size 1024.0)	; cribbed from gnus-agent-expire-done-message
+		(cdr units))
+      (setq size (/ size 1024.0)
+	    units (cdr units)))
     (delete-region (point-min) (point-max))
     (insert label)
     (insert-button filename
@@ -186,23 +193,22 @@
 		   'filename filename
 		   'directory (file-name-as-directory directory)
 		   'data data)
+    (insert (format " (%.0f%s)" size (car units)))
     (when (and rmail-mime-show-images
 	       (string-match "image/\\(.*\\)" (setq type (car content-type)))
 	       (setq type (concat "." (match-string 1 type))
 		     type (image-type-from-file-name type))
 	       (memq type image-types)
 	       (image-type-available-p type))
-      (setq data (string-as-unibyte data))
       (insert " ")
-      ;; FIXME ought to check or at least display the image size.
       (cond ((eq rmail-mime-show-images 'button)
 	     (insert-button "Display"
 			    :type 'rmail-mime-image
 			    'help-echo "mouse-2, RET: Show image"
 			    'image-type type
-			    'image-data data))
+			    'image-data udata))
 	    (t
-	     (rmail-mime-insert-image type data))))))
+	     (rmail-mime-insert-image type udata))))))
 
 (defun test-rmail-mime-bulk-handler ()
   "Test of a mail used as an example in RFC 2183."