Gnus development mailing list
 help / color / mirror / Atom feed
* Message Mode Popup Menu for XEmacs
@ 1996-05-05 22:11 Steven L Baur
  1996-05-06  7:42 ` Per Abrahamsen
  0 siblings, 1 reply; 2+ messages in thread
From: Steven L Baur @ 1996-05-05 22:11 UTC (permalink / raw)


The following patch adds a nice popup buffer menu for message mode,
and is fully transparent to Emacs 19.30.
This is patched off of September Gnus v0.80.
===================================================================
RCS file: RCS/ChangeLog,v
retrieving revision 1.82
diff -u -r1.82 ChangeLog
--- ChangeLog	1996/04/29 22:31:22	1.82
+++ ChangeLog	1996/05/05 21:54:21
@@ -1,3 +1,7 @@
+Sun May  5 14:54:06 1996  Steven L Baur  <steve@miranova.com>
+
+	* message.el (message-mode-map): Added mode menu for XEmacs.
+
 Mon Apr 29 02:24:14 1996  Lars Magne Ingebrigtsen  <larsi@aegir.ifi.uio.no>
 
 	* message.el (message-check-news-syntax): Better `empty' check.

===================================================================
RCS file: RCS/message.el,v
retrieving revision 1.18
diff -u -r1.18 message.el
--- message.el	1996/04/29 22:31:22	1.18
+++ message.el	1996/05/05 21:08:05
@@ -370,6 +370,34 @@
 (defvar message-sent-hook nil
   "Hook run after sending messages.")
 
+(if (string-match "XEmacs\\|Lucid" emacs-version)
+    (defvar message-mode-menu
+      '("Send Message"
+	"Go to Field:"
+	"----"
+	["To:" message-goto-to t]
+	["Subject:" message-goto-subject t]
+	["Summary:" message-goto-summary t]
+	["Keywords:" message-goto-keywords t]
+	["Newsgroups:" message-goto-newsgroups t]
+	["Followup-To:" message-goto-followup-to t]
+	["Distribution:" message-goto-distribution t]
+	["Body" message-goto-body t]
+	["Signature" message-goto-signature t]
+	"----"
+	"Miscellaneous Commands:"
+	"----"
+	["Sort Headers" message-sort-headers t]
+	["Yank Original" message-yank-original t]
+	["Fill Yanked Message" message-fill-yanked-message t]
+;;  ["Insert Signature"         news-reply-signature     t]
+	["Caesar (rot13) Message" message-caesar-buffer-body t]
+	"----"
+	["Post Message" message-send-and-exit t]
+	["Abort Message" message-dont-send t]
+	)
+      "Buffer Menu for XEmacs."))
+
 ;;; Internal variables.
 
 ;;; Regexp matching the delimiter of messages in UNIX mail format
@@ -662,7 +690,9 @@
 
   (define-key message-mode-map "\C-c\C-c" 'message-send-and-exit)
   (define-key message-mode-map "\C-c\C-s" 'message-send)
-  (define-key message-mode-map "\C-c\C-k" 'message-dont-send))
+  (define-key message-mode-map "\C-c\C-k" 'message-dont-send)
+  (if (string-match "XEmacs\\|Lucid" emacs-version)
+      (define-key message-mode-map 'button3 'message-mode-menu)))
 
 (defun message-make-menu-bar ()
   (unless (boundp 'message-menu)
@@ -2525,6 +2555,14 @@
      (while (re-search-forward "\b" end1 t)
        (if (eq (following-char) (char-after (- (point) 2)))
 	   (delete-char -2))))))
+
+;; Support for Mouse menus
+(if (string-match "XEmacs\\|Lucid" emacs-version)
+    (defun message-mode-menu (event)
+      (interactive "e")
+      (select-window (event-window event))
+      (let ((popup-menu-titles nil))
+	(popup-menu 'message-mode-menu))))
 
 (provide 'message)
 

-- 
steve@miranova.com baur
Unsolicited commercial e-mail will be proofread for $250/hour.
Andrea Seastrand: For your vote on the Telecom bill, I will vote for anyone
except you in November.


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Message Mode Popup Menu for XEmacs
  1996-05-05 22:11 Message Mode Popup Menu for XEmacs Steven L Baur
@ 1996-05-06  7:42 ` Per Abrahamsen
  0 siblings, 0 replies; 2+ messages in thread
From: Per Abrahamsen @ 1996-05-06  7:42 UTC (permalink / raw)



This code should make the menu portable and simplify the code.

It is relative to 0.81.

Mon May  6 09:16:02 1996  Per Abrahamsen  <abraham@dina.kvl.dk>

	* message.el (message-mode-map): Do not bind button3.
	(message-mode-menu): Use easymenu.
	(message-mode): Call `easy-menu-add'.
	(message-make-menu-bar): Deleted.

	* message-xmas.el (message-mode-menu): Deleted.

cd ~/emacs/sgnus-0.81/lisp/
diff -c message.el~ message.el
*** message.el~	Mon May  6 01:44:12 1996
--- message.el	Mon May  6 09:20:59 1996
***************
*** 34,39 ****
--- 34,40 ----
  (require 'mail-header)
  (require 'nnheader)
  (require 'timezone)
+ (require 'easymenu)
  
  ;;;###autoload
  (defvar message-fcc-handler-function 'rmail-output
***************
*** 376,409 ****
  (defvar message-sent-hook nil
    "Hook run after sending messages.")
  
- (if (string-match "XEmacs\\|Lucid" emacs-version)
-     (defvar message-mode-menu
-       '("Send Message"
- 	"Go to Field:"
- 	"----"
- 	["To:" message-goto-to t]
- 	["Subject:" message-goto-subject t]
- 	["Summary:" message-goto-summary t]
- 	["Keywords:" message-goto-keywords t]
- 	["Newsgroups:" message-goto-newsgroups t]
- 	["Followup-To:" message-goto-followup-to t]
- 	["Distribution:" message-goto-distribution t]
- 	["Body" message-goto-body t]
- 	["Signature" message-goto-signature t]
- 	"----"
- 	"Miscellaneous Commands:"
- 	"----"
- 	["Sort Headers" message-sort-headers t]
- 	["Yank Original" message-yank-original t]
- 	["Fill Yanked Message" message-fill-yanked-message t]
- ;;  ["Insert Signature"         news-reply-signature     t]
- 	["Caesar (rot13) Message" message-caesar-buffer-body t]
- 	"----"
- 	["Post Message" message-send-and-exit t]
- 	["Abort Message" message-dont-send t]
- 	)
-       "Buffer Menu for XEmacs."))
- 
  ;;; Internal variables.
  
  ;;; Regexp matching the delimiter of messages in UNIX mail format
--- 377,382 ----
***************
*** 699,714 ****
  
    (define-key message-mode-map "\C-c\C-c" 'message-send-and-exit)
    (define-key message-mode-map "\C-c\C-s" 'message-send)
!   (define-key message-mode-map "\C-c\C-k" 'message-dont-send)
!   (if (string-match "XEmacs\\|Lucid" emacs-version)
!       (define-key message-mode-map 'button3 'message-mode-menu)))
! 
! (defun message-make-menu-bar ()
!   (unless (boundp 'message-menu)
!     (easy-menu-define
!      message-menu message-mode-map ""
!      '("Message"
!        ["Fill Citation" message-fill-yanked-message t]))))
  
  ;;;###autoload
  (defun message-mode ()
--- 672,704 ----
  
    (define-key message-mode-map "\C-c\C-c" 'message-send-and-exit)
    (define-key message-mode-map "\C-c\C-s" 'message-send)
!   (define-key message-mode-map "\C-c\C-k" 'message-dont-send))
! 
! (easy-menu-define message-mode-menu message-mode-map
!   "Message Menu."
!   '("Message"
!     "Go to Field:"
!     "----"
!     ["To:" message-goto-to t]
!     ["Subject:" message-goto-subject t]
!     ["Summary:" message-goto-summary t]
!     ["Keywords:" message-goto-keywords t]
!     ["Newsgroups:" message-goto-newsgroups t]
!     ["Followup-To:" message-goto-followup-to t]
!     ["Distribution:" message-goto-distribution t]
!     ["Body" message-goto-body t]
!     ["Signature" message-goto-signature t]
!     "----"
!     "Miscellaneous Commands:"
!     "----"
!     ["Sort Headers" message-sort-headers t]
!     ["Yank Original" message-yank-original t]
!     ["Fill Yanked Message" message-fill-yanked-message t]
!     ;;  ["Insert Signature"         news-reply-signature     t]
!     ["Caesar (rot13) Message" message-caesar-buffer-body t]
!     "----"
!     ["Post Message" message-send-and-exit t]
!     ["Abort Message" message-dont-send t]))
  
  ;;;###autoload
  (defun message-mode ()
***************
*** 774,779 ****
--- 764,770 ----
      (mail-hist-define-keys))
    (when (string-match "XEmacs\\|Lucid" emacs-version)
      (message-setup-toolbar))
+   (easy-menu-add message-mode-menu message-mode-map)
    (run-hooks 'text-mode-hook 'message-mode-hook))
  
  \f
***************
*** 2567,2573 ****
         (if (eq (following-char) (char-after (- (point) 2)))
  	   (delete-char -2))))))
  
! ;; Support for Mouse menus
  (when (string-match "XEmacs\\|Lucid" emacs-version)
    (require 'message-xmas))
  
--- 2558,2564 ----
         (if (eq (following-char) (char-after (- (point) 2)))
  	   (delete-char -2))))))
  
! ;; Support for toolbar
  (when (string-match "XEmacs\\|Lucid" emacs-version)
    (require 'message-xmas))
  
diff -c message-xmas.el_ORIG message-xmas.el
*** message-xmas.el_ORIG	Mon May  6 01:44:10 1996
--- message-xmas.el	Mon May  6 09:14:54 1996
***************
*** 96,107 ****
         (set-specifier (symbol-value message-use-toolbar)
  		      (cons (current-buffer) message-toolbar))))
  
- (defun message-mode-menu (event)
-   (interactive "e")
-   (select-window (event-window event))
-   (let ((popup-menu-titles nil))
-     (popup-menu 'message-mode-menu)))
- 
  (provide 'message-xmas)
  
  ;;; message-xmas.el ends here
--- 96,101 ----

Compilation exited abnormally with code 1 at Mon May  6 09:21:54


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1996-05-06  7:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1996-05-05 22:11 Message Mode Popup Menu for XEmacs Steven L Baur
1996-05-06  7:42 ` Per Abrahamsen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).