diff options
author | Glenn Morris <rgm@gnu.org> | 2009-07-19 00:32:31 +0000 |
---|---|---|
committer | Glenn Morris <rgm@gnu.org> | 2009-07-19 00:32:31 +0000 |
commit | a71b84cd1b5a3f52a7cd327c2dbb065ddfbf56ff (patch) | |
tree | a9f5369e87a6848cf06eee8e3cbe60c60367ee36 /lisp/calendar/cal-menu.el | |
parent | fecbcdcbcd696db4899d3637c92fb509df441790 (diff) | |
download | emacs-a71b84cd1b5a3f52a7cd327c2dbb065ddfbf56ff.tar.gz |
(cal-menu-set-date-title): Handle calls from non-calendar buffers (Bug#3862).
Restore "not on a date" message.
(cal-menu-context-mouse-menu): Doc fix.
Diffstat (limited to 'lisp/calendar/cal-menu.el')
-rw-r--r-- | lisp/calendar/cal-menu.el | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/lisp/calendar/cal-menu.el b/lisp/calendar/cal-menu.el index a308e127ac6..d60daaafc1c 100644 --- a/lisp/calendar/cal-menu.el +++ b/lisp/calendar/cal-menu.el @@ -200,22 +200,28 @@ is non-nil." (read-file-name "Enter diary file name: " default-directory nil t) event)) +;; In 22, the equivalent code gave an error when not called on a date, +;; but easymenu does not seem to allow this (?). +;; The ignore-errors is because `documentation' can end up calling +;; this in a non-calendar buffer where displayed-month is unbound. (Bug#3862) (defun cal-menu-set-date-title (menu) "Convert date of last event to title suitable for MENU." - (easy-menu-filter-return - menu (calendar-date-string (calendar-cursor-to-date t last-input-event) - t nil))) + (let ((date (ignore-errors (calendar-cursor-to-date nil last-input-event)))) + (if date + (easy-menu-filter-return menu (calendar-date-string date t nil)) + (message "Not on a date!") + nil))) (easy-menu-define cal-menu-context-mouse-menu nil - "Pop up menu for Mouse-2 for selected date in the calendar window." - '("cal-menu-mouse2" :filter cal-menu-set-date-title + "Pop up mouse menu for selected date in the calendar window." + '("cal-menu-context-mouse-menu" :filter cal-menu-set-date-title "--" ["Holidays" calendar-cursor-holidays] ["Mark date" calendar-set-mark] ["Sunrise/sunset" calendar-sunrise-sunset] ["Other calendars" calendar-print-other-dates] - ;; FIXME there is a bug (#447) with last-nonmenu-event and submenus. - ;; These currently don't work if called without calendar window selected. + ;; There was a bug (#447; fixed) with last-nonmenu-event and submenus. + ;; These did not work if called without calendar window selected. ("Prepare LaTeX buffer" ["Daily (1 page)" cal-tex-cursor-day] ["Weekly (1 page)" cal-tex-cursor-week] |