changeset 22413:be2f536a1358

Rewrote calendar-mouse-holidays, calendar-mouse-view-diary-entries, calendar-mouse-view-other-diary-entries to put results in popup menu to be consistent with other functions.
author Edward M. Reingold <reingold@emr.cs.iit.edu>
date Tue, 09 Jun 1998 22:03:14 +0000
parents 6fdc14d2b071
children 80fbcba480dc
files lisp/calendar/cal-menu.el
diffstat 1 files changed, 50 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/calendar/cal-menu.el	Tue Jun 09 21:50:58 1998 +0000
+++ b/lisp/calendar/cal-menu.el	Tue Jun 09 22:03:14 1998 +0000
@@ -281,25 +281,63 @@
     (calendar-cursor-holidays)))
 
 (defun calendar-mouse-holidays ()
-  "Show holidays for mouse-selected date."
+  "Pop up menu of holidays for mouse selected date."
   (interactive)
-  (save-excursion
-    (calendar-mouse-goto-date (calendar-event-to-date))
-    (calendar-cursor-holidays)))
+  (let* ((date (calendar-event-to-date))
+         (l (mapcar '(lambda (x) (list x))
+                    (check-calendar-holidays date)))
+         (selection
+          (x-popup-menu
+           event
+           (list
+            (format "Holidays for %s" (calendar-date-string date))
+            (append
+             (list (format "Holidays for %s" (calendar-date-string date)))
+             (if l l '("None")))))))
+    (and selection (call-interactively selection))))
 
 (defun calendar-mouse-view-diary-entries ()
-  "View diary entries on mouse-selected date."
+  "Pop up menu of diary entries for mouse selected date."
   (interactive)
-  (save-excursion
-    (calendar-mouse-goto-date (calendar-event-to-date))
-    (view-diary-entries 1)))
+  (let* ((date (calendar-event-to-date))
+         (l (mapcar '(lambda (x) (list (car (cdr x))))
+                    (let ((diary-list-include-blanks nil)
+                          (diary-display-hook nil))
+                      (list-diary-entries date 1))))
+         (selection
+          (x-popup-menu
+           event
+           (list
+            (format "Diary entries for %s" (calendar-date-string date))
+            (append
+             (list (format "Diary entries for %s" (calendar-date-string date)))
+             (if l l '("None")))))))
+    (and selection (call-interactively selection))))
 
 (defun calendar-mouse-view-other-diary-entries ()
-  "View diary entries from alternative file on mouse-selected date."
+  "Pop up menu of diary entries from alternative file on mouse-selected date."
   (interactive)
-  (save-excursion
-    (calendar-mouse-goto-date (calendar-event-to-date))
-    (call-interactively 'view-other-diary-entries)))
+  (let* ((date (calendar-event-to-date))
+         (l (mapcar '(lambda (x) (list (car (cdr x))))
+                    (let ((diary-list-include-blanks nil)
+                          (diary-display-hook nil)
+                          (diary-file (read-file-name
+                                       "Enter diary file name: "
+                                       default-directory nil t)))
+                      (list-diary-entries date 1))))
+         (selection
+          (x-popup-menu
+           event
+           (list
+            (format "Diary entries from %s for %s"
+                    diary-file
+                    (calendar-date-string date))
+            (append
+             (list (format "Diary entries from %s for %s"
+                            diary-file
+                           (calendar-date-string date)))
+             (if l l '("None")))))))
+    (and selection (call-interactively selection))))
 
 (defun calendar-mouse-insert-diary-entry ()
   "Insert diary entry for mouse-selected date."