Add hook to notice modifications to folders and reflect them in the
authorChris Hanson <org/chris-hanson/cph>
Fri, 7 Apr 2000 20:45:55 +0000 (20:45 +0000)
committerChris Hanson <org/chris-hanson/cph>
Fri, 7 Apr 2000 20:45:55 +0000 (20:45 +0000)
mode line.

v7/src/imail/imail-top.scm

index c84414ce7b8b8bc62014373cf8ddbd5fcde2e3a3..e4386d1195541c613928fbcdb46fbec6c0308561 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: imail-top.scm,v 1.17 2000/04/07 20:34:14 cph Exp $
+;;; $Id: imail-top.scm,v 1.18 2000/04/07 20:45:55 cph Exp $
 ;;;
 ;;; Copyright (c) 1999-2000 Massachusetts Institute of Technology
 ;;;
@@ -113,12 +113,19 @@ May be called with an IMAIL folder URL as argument;
 
 (define (associate-imail-folder-with-buffer folder buffer)
   (buffer-put! buffer 'IMAIL-FOLDER folder)
-  (folder-put! folder 'BUFFER buffer))
+  (folder-put! folder 'BUFFER buffer)
+  (add-event-receiver! (folder-modification-event folder)
+                      notice-folder-modifications))
 
 (define (imail-folder->buffer folder error?)
   (or (folder-get folder 'BUFFER #f)
       (and error? (error:bad-range-argument folder 'IMAIL-FOLDER->BUFFER))))
 
+(define (notice-folder-modifications folder)
+  (let ((buffer (imail-folder->buffer folder #f)))
+    (if buffer
+       (imail-update-mode-line! buffer))))
+
 (define (selected-folder #!optional error? buffer)
   (let ((buffer
         (if (or (default-object? buffer) (not buffer))