X-Git-Url: https://cgit.sxemacs.org/?a=blobdiff_plain;ds=sidebyside;f=lisp%2Fmessage.el;h=f5c04c771e52d585f8709b051507c0642636114d;hb=0ddd674342067ef66a296cab65fa509f605aa9d0;hp=90f544faddf6caa21a2166a7e14af55b070d887f;hpb=45893d487acf545d3c684df35f53eb3d1cbbd282;p=gnus diff --git a/lisp/message.el b/lisp/message.el index 90f544fad..f5c04c771 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -39,6 +39,7 @@ (require 'canlock) (require 'mailheader) (require 'nnheader) +(require 'gmm-utils) ;; This is apparently necessary even though things are autoloaded. ;; Because we dynamically bind mail-abbrev-mode-regexp, we'd better ;; require mailabbrev here. @@ -1663,7 +1664,6 @@ You must have the \"hashcash\" binary installed, see `hashcash-path'." (autoload 'gnus-request-post "gnus-int") (autoload 'gnus-server-string "gnus") (autoload 'idna-to-ascii "idna") - (autoload 'gmm-tool-bar-from-list "gmm-utils") (autoload 'message-setup-toolbar "messagexmas") (autoload 'mh-new-draft-name "mh-comp") (autoload 'mh-send-letter "mh-comp") @@ -3707,8 +3707,8 @@ not have PROP." (when (let ((char (char-after))) (or (< (mm-char-int char) 128) (and (mm-multibyte-p) - ;; Fixme: Wrong for Emacs 23 and for things - ;; like undecable utf-8. Should at least + ;; FIXME: Wrong for Emacs 23 (unicode) and for + ;; things like undecable utf-8. Should at least ;; use find-coding-systems-region. (memq (char-charset char) '(eight-bit-control eight-bit-graphic @@ -4767,7 +4767,9 @@ In posting styles use `(\"Expires\" (make-expires-date 30))'." (* 25 25))) (let ((tm (current-time))) (concat - (if (memq system-type '(ms-dos emx vax-vms)) + (if (or (memq system-type '(ms-dos emx vax-vms)) + ;; message-number-base36 doesn't handle bigints. + (floatp (user-uid))) (let ((user (downcase (user-login-name)))) (while (string-match "[^a-z0-9_]" user) (aset user (match-beginning 0) ?_)) @@ -6505,6 +6507,7 @@ Optional DIGEST will use digest to forward." (set-buffer (get-buffer-create " *message resend*")) (erase-buffer)) (let ((message-this-is-mail t) + message-generate-hashcash message-setup-hook) (message-setup `((To . ,address)))) ;; Insert our usual headers. @@ -6542,6 +6545,7 @@ Optional DIGEST will use digest to forward." ;; Send it. (let ((message-inhibit-body-encoding t) message-required-mail-headers + message-generate-hashcash rfc2047-encode-encoded-words) (message-send-mail)) (kill-buffer (current-buffer))) @@ -6702,7 +6706,6 @@ which specify the range to operate on." ;; Support for toolbar (eval-when-compile - (defvar tool-bar-map) (defvar tool-bar-mode)) ;; Note: The :set function in the `message-tool-bar*' variables will only @@ -6716,8 +6719,9 @@ Setter function for custom variables." ;; When used as ":set" function: (set-default symbol value))) -;; The default will be changed when the new icons have been checked in: -(defcustom message-tool-bar 'message-tool-bar-retro +(defcustom message-tool-bar (if (eq gmm-tool-bar-style 'gnome) + 'message-tool-bar-gnome + 'message-tool-bar-retro) "Specifies the message mode tool bar. It can be either a list or a symbol refering to a list. See @@ -6736,24 +6740,21 @@ Pre-defined symbols include `message-tool-bar-gnome' and :set 'message-tool-bar-update :group 'message) -;; The new icons are not yet committed, see -;; http://thread.gmane.org/gmane.emacs.gnus.general/61719 (defcustom message-tool-bar-gnome '((gmm-ignore "separator") - (message-send-and-exit "send") - (message-dont-send "save-draft") + (message-send-and-exit "mail/send") + (message-dont-send "mail/save-draft") (message-kill-buffer "close") ;; stock_cancel (mml-attach-file "attach" mml-mode-map) (ispell-message "spell" nil :visible (not flyspell-mode)) (flyspell-buffer "spell" t :visible flyspell-mode :help "Flyspell whole buffer") - ;; We should have a mail-preview icon with an envelope like the one in - ;; stock_mail-reply. - (mml-preview "mail-preview" mml-mode-map) + (mml-preview "mail/preview" mml-mode-map) (mml-secure-message-sign-encrypt "lock" mml-mode-map :visible nil) (message-insert-importance-high "important" nil :visible nil) (message-insert-importance-low "unimportant" nil :visible nil) (message-insert-disposition-notification-to "receipt" nil :visible nil) + (gmm-customize-mode "preferences" t :help "Edit mode preferences") (message-info "help" t :help "Message manual")) "List of items for the message tool bar (GNOME style). @@ -6765,15 +6766,16 @@ See `gmm-tool-bar-from-list' for details on the format of the list." :group 'message) (defcustom message-tool-bar-retro - '((message-send-and-exit "mail/send") + '(;; Old Emacs 21 icon for consistency. + (message-send-and-exit "gnus/mail_send") (message-kill-buffer "close") (message-dont-send "cancel") (mml-attach-file "attach" mml-mode-map) (ispell-message "spell") (mml-preview "preview" mml-mode-map) - (message-insert-importance-high "important") - (message-insert-importance-low "unimportant") - (message-insert-disposition-notification-to "receipt")) + (message-insert-importance-high "gnus/important") + (message-insert-importance-low "gnus/unimportant") + (message-insert-disposition-notification-to "gnus/receipt")) "List of items for the message tool bar (retro style). See `gmm-tool-bar-from-list' for details on the format of the list." @@ -6796,6 +6798,8 @@ See `gmm-tool-bar-from-list' for the format of the list." :set 'message-tool-bar-update :group 'message) +(defvar image-load-path) + (defun message-make-tool-bar (&optional force) "Make a message mode tool bar from `message-tool-bar-list'. When FORCE, rebuild the tool bar." @@ -6804,11 +6808,16 @@ When FORCE, rebuild the tool bar." tool-bar-mode (or (not message-tool-bar-map) force)) (setq message-tool-bar-map - (when (default-value 'tool-bar-mode) - (let ((load-path (mm-image-load-path))) - (gmm-tool-bar-from-list message-tool-bar - message-tool-bar-zap-list - 'message-mode-map))))) + (let* ((load-path + (gmm-image-load-path-for-library "message" + "mail/save-draft.xpm" + nil t)) + (image-load-path (cons (car load-path) + (when (boundp 'image-load-path) + image-load-path)))) + (gmm-tool-bar-from-list message-tool-bar + message-tool-bar-zap-list + 'message-mode-map)))) message-tool-bar-map) ;;; Group name completion.