*** empty log message ***
[gnus] / lisp / gnus-eform.el
index e4cc23f..b8df3d3 100644 (file)
@@ -1,5 +1,5 @@
 ;;; gnus-eform.el --- a mode for editing forms for Gnus
-;; Copyright (C) 1996 Free Software Foundation, Inc.
+;; Copyright (C) 1996,97 Free Software Foundation, Inc.
 
 ;; Author: Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
 ;; Keywords: news
 
 ;;; Code:
 
-(require 'gnus-load)
-(require 'gnus-win)
 (require 'gnus)
+(require 'gnus-win)
 
 ;;;
 ;;; Editing forms
 ;;;
 
-(defvar gnus-edit-form-mode-hook nil
-  "Hook run in `gnus-edit-form-mode' buffers.")
+(defgroup gnus-edit-form nil
+  "A mode for editing forms."
+  :group 'gnus)
 
-(defvar gnus-edit-form-menu-hook nil
-  "Hook run when creating menus in `gnus-edit-form-mode' buffers.")
+(defcustom gnus-edit-form-mode-hook nil
+  "Hook run in `gnus-edit-form-mode' buffers."
+  :group 'gnus-edit-form
+  :type 'hook)
+
+(defcustom gnus-edit-form-menu-hook nil
+  "Hook run when creating menus in `gnus-edit-form-mode' buffers."
+  :group 'gnus-edit-form
+  :type 'hook)
 
 ;;; Internal variables
 
@@ -66,8 +73,7 @@ It is a slightly enhanced emacs-lisp-mode.
 
 \\{gnus-edit-form-mode-map}"
   (interactive)
-  (when (and menu-bar-mode
-            (gnus-visual-p 'group-menu 'menu))
+  (when (gnus-visual-p 'group-menu 'menu)
     (gnus-edit-form-make-menu-bar))
   (kill-all-local-variables)
   (setq major-mode 'gnus-edit-form-mode)
@@ -82,8 +88,7 @@ It is a slightly enhanced emacs-lisp-mode.
 Call EXIT-FUNC on exit.  Display DOCUMENTATION in the beginning
 of the buffer."
   (let ((winconf (current-window-configuration)))
-    (set-buffer (setq gnus-edit-form-buffer 
-                     (get-buffer-create gnus-edit-form-buffer)))
+    (set-buffer (get-buffer-create gnus-edit-form-buffer))
     (gnus-configure-windows 'edit-form)
     (gnus-add-current-to-buffer-list)
     (gnus-edit-form-mode)
@@ -108,10 +113,11 @@ of the buffer."
   "Update changes and kill the current buffer."
   (interactive)
   (goto-char (point-min))
-  (let ((form (read (current-buffer))))
+  (let ((form (read (current-buffer)))
+       (func gnus-edit-form-done-function))
     (gnus-edit-form-exit)
-    (funcall gnus-edit-form-done-function form)))
-  
+    (funcall func form)))
+
 (defun gnus-edit-form-exit ()
   "Kill the current buffer."
   (interactive)