;;; compiled by mycroft@hal on Tue Sep 22 04:58:48 1992
;;; from file /src/emacs-19.0/lisp/appt.el
;;; emacs version 19.0.426.
;;; bytecomp version FSF 2.08
;;; optimization is on.

(defvar appt-issue-message t "\
*Non-nil means check for appointments in the diary buffer.
To be detected, the diary entry must have the time
as the first thing on a line.")
(defvar appt-message-warning-time 10 "\
*Time in minutes before an appointment that the warning begins.")
(defvar appt-audible t "\
*Non-nil means beep to indicate appointment.")
(defvar appt-visible t "\
*Non-nil means display appointment message in echo area.")
(defvar appt-display-mode-line t "\
*Non-nil means display minutes to appointment and time on the mode line.")
(defvar appt-msg-window t "\
*Non-nil means display appointment message in another window.")
(defvar appt-display-duration 5 "\
*The number of seconds an appointment message is displayed.")
(defvar appt-display-diary t "\
*Non-nil means to display the next days diary on the screen. 
This will occur at midnight when the appointment list is updated.")
(defvar appt-time-msg-list nil "\
The list of appointments for today.
Use `appt-add' and `appt-delete' to add and delete appointments from list.
The original list is generated from the today's `diary-entries-list'.
The number before each time/message is the time in minutes from midnight.")
(defconst max-time 1439 "\
11:59pm in minutes - number of minutes in a day minus 1.")
(fset 'appt-check (make-byte-code (quote nil) " O! O!\"\\U> 7 7  >  )@@@Zt Wt AT @@@T W \\V TZXY \"!!O\n@A@# # @A@\"& !(\"!!O\n% q) !!UA)." [-1 "" new-time min-to-app string-to-int current-time-string 11 13 cur-hour 14 16 cur-min * 60 cur-comp-time 1 view-diary-entries-initially appt-display-diary diary appt-make-list diary-display-hook appt-issue-message appt-time-msg-list appt-comp-time appt-message-warning-time max-time nil 0 appt-msg-window string-match "[0-9]?[0-9]:[0-9][0-9]\\(am\\|pm\\)?" display-time-string match-beginning match-end appt-disp-window appt-visible message "%s" appt-audible beep appt-display-mode-line concat "App't in " " min. " " " other-buffer set-buffer-modified-p buffer-modified-p sit-for] 7 "\
Check for an appointment and update the mode line.
Note: the time must be the first thing in the line in the diary
for a warning to be issued.

The format of the time can be either 24 hour or am/pm.
Example: 

               02/23/89
                 18:00 Dinner
            
              Thursday
                11:45am Lunch meeting.

The following variables control the action of the notification:

appt-issue-message
        If T, the diary buffer is checked for appointments.

appt-message-warning-time
       Variable used to determine if appointment message
        should be displayed.

appt-audible
        Variable used to determine if appointment is audible.
        Default is t.

appt-visible
        Variable used to determine if appointment message should be
        displayed in the mini-buffer. Default is t.

appt-msg-window
       Variable used to determine if appointment message
       should temporarily appear in another window. Mutually exclusive
       to appt-visible.

appt-display-duration
      The number of seconds an appointment message
      is displayed in another window.

This function is run from the loadst process for display time.
Therefore, you need to have `(display-time)' in your .emacs file."))
(byte-code "$M$M" [appt-disp-window make-byte-code (min-to-app new-time appt-msg) "!" [require electric ((byte-code "  !8U   p!q	%	!!	!!!D !!R !	!*" [frame-height 3 window-edges selected-window appt-select-lowest-window split-window this-buffer get-buffer-create "appt-buf" appt-disp-buf concat "-------------------- Appointment in " min-to-app " minutes. " new-time " %-" mode-line-format pop-to-buffer insert-string appt-msg shrink-window-if-larger-than-buffer get-buffer-window set-buffer-modified-p nil appt-audible beep 1 sit-for appt-display-duration kill-buffer] 6))] 2 appt-select-lowest-window nil "  AAA@ G  		!AAA@\n\nW0 \n		!	=C 	!* +" [selected-window lowest-window window-edges bottom-edge previous-window last-window t window-search next-window this-window next-bottom-edge select-window nil]] 6)
(fset 'appt-add (make-byte-code (quote (new-appt-time new-appt-msg)) "\n\" !\nQ\n!C	CB\n\nC\"!+" [string-match "[0-9]?[0-9]:[0-9][0-9]\\(am\\|pm\\)?" new-appt-time error "Unacceptable time-string" " " new-appt-msg appt-time-string appt-convert-time appt-time time-msg append appt-time-msg-list appt-sort-list] 4 "\
Add an appointment for the day at TIME and issue MESSAGE.
The time should be in either 24 hour format or am/pm format." "sTime (hh:mm[am/pm]): \nsMessage: "))
(fset 'appt-delete (make-byte-code (quote nil) "	- 	@\nA@!Q!	A& \n\"+ !)" [appt-time-msg-list tmp-msg-list element "Delete " prin1-to-string " from list? " prompt-string y-or-n-p test-input delq nil tmp-appt-msg-list message ""] 3 "\
Delete an appointment from the list of appointments." nil))
(byte-code "$M$M" [appt-make-list make-byte-code nil "\n \n  @@\" @A!O\"x !!O!GWM !\\OO \"!!O!CCB	C\"+# )A *	! O! O! \" \\#	@@@$	 $#W 	A 	@@@$ -" [nil appt-time-msg-list diary-entries-list "" new-time-string entry-list calendar-date-equal calendar-current-date prin1-to-string 2 -2 time-string string-match "[0-9]?[0-9]:[0-9][0-9]\\(am\\|pm\\)?.*" match-beginning 0 match-end appt-time-string 1 "[0-9]?[0-9]:[0-9][0-9]\\(am\\|pm\\)?" appt-convert-time appt-time time-msg append appt-sort-list string-to-int current-time-string 11 13 cur-hour 14 16 cur-min * 60 cur-comp-time appt-comp-time] 6 appt-sort-list (appt-list) "\n: \n@@@\nA+ @@@W$ @@@A 	C\"\n\"+ 	)" [nil order-list appt-list element element-time tmp-list append delq] 4] 6)
(fset 'appt-convert-time (make-byte-code (quote (time2conv)) "\"!\\!O!\"!!O!\"D \nWD \"\n\\\n\"	\\+" [0 min hr conv-time string-match ":[0-9][0-9]" time2conv string-to-int match-beginning 1 match-end "[0-9]?[0-9]:" "[p][m]" 12 * 60] 6 "\
Convert hour:min[am/pm] format to minutes from midnight."))
(byte-code "" [appt-check display-time-hook] 1)
