Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!philabs!cmcl2!harvard!think!mit-eddie!genrad!decvax!ittatc!dcdwest!sdcsvax!sdcrdcf!ucla-cs!srt From: srt@ucla-cs.ARPA (Scott Turner) Newsgroups: net.sources.bugs Subject: Re: visual calendar Message-ID: <12607@ucla-cs.ARPA> Date: Mon, 5-May-86 18:30:54 EDT Article-I.D.: ucla-cs.12607 Posted: Mon May 5 18:30:54 1986 Date-Received: Sat, 10-May-86 13:10:46 EDT References: <181@zeus.UUCP> Organization: UCLA CS Department Lines: 140 Summary: Update -B option I've added a small feature to Tim Stoehr's visual calendar feature. The change consists of a new flag (-B) and a new command (B). Both give you a short listing of the day's events in this sort of format: 10:00AM-11:00AM Foo Class 3:00PM- 6:00PM Bar Seminar: The Micro-Lenat The intention is that -B is useful for building a calendar(1) type reminding, either as mail or in your .login. The shar file consists of a new file "psched.c" (you'll have to mod your Makefile) and three *.diff files made with diff -e. These should be applied to month.c, month.man and user.c. See the man page for diff if you don't know how to use these files. -- Scott # This is a shell archive. Remove anything before this line, # then unpack it by saving it in a file and typing "sh file". # # Wrapped by srt on Mon May 5 11:59:22 PDT 1986 # Contents: month.diff man.diff user.diff psched.c echo x - month.diff sed 's/^@//' > "month.diff" <<'@//E*O*F month.diff//' 93a case 'B': get_current_date(); read_schedule(); psched2(); exit(0); break; @. @//E*O*F month.diff// chmod u=rw,g=,o= month.diff echo x - man.diff sed 's/^@//' > "man.diff" <<'@//E*O*F man.diff//' 213a Specifying the -B (Book) flag prints out the list of scheduled events for the current day. @. 103a 'B' will list all your events for the current day. @. @//E*O*F man.diff// chmod u=rw,g=rw,o=rw man.diff echo x - user.diff sed 's/^@//' > "user.diff" <<'@//E*O*F user.diff//' 171a case 'B': psched(); break; @. @//E*O*F user.diff// chmod u=rw,g=,o= user.diff echo x - psched.c sed 's/^@//' > "psched.c" <<'@//E*O*F psched.c//' #include #include "month.h" /* My attempt to write a routine that will print out the schedule for the day, i.e., 8:45 - 9:45 Foo Bar Baz and so on... */ psched() { short i, shour, sminute, ehour, eminute, n; struct event_rec *events_today[MAX_DAILY_EVENTS]; get_daily_events(events_today); for ( n = 0; events_today[n]; n++); sort_events(events_today,n); clear(); move(0,0); i = 0; while (events_today[i]) { shour = events_today[i]->hour; sminute = events_today[i]->minute; ehour = shour + (events_today[i]->duration_hours); eminute = sminute + (events_today[i]->duration_minutes); printw("%2d:%02d%2s-%2d:%02d%2s ",(shour <= 12) ? shour : (shour % 12),sminute, ((shour < 12) ? "AM" : "PM"), (ehour <= 12) ? ehour : (ehour % 12),eminute, ((ehour < 12) ? "AM" : "PM")); printw("%s\n", events_today[i]->event_string); i++; } refresh(); get_char(); clear(); print_screen(); } psched2() { short i, shour, sminute, ehour, eminute, n; struct event_rec *events_today[MAX_DAILY_EVENTS]; get_daily_events(events_today); for ( n = 0; events_today[n]; n++); sort_events(events_today,n); i = 0; while (events_today[i]) { shour = events_today[i]->hour; sminute = events_today[i]->minute; ehour = shour + (events_today[i]->duration_hours); eminute = sminute + (events_today[i]->duration_minutes); printf("%2d:%02d%2s-%2d:%02d%2s ",(shour <= 12) ? shour : (shour % 12),sminute, ((shour < 12) ? "AM" : "PM"), (ehour <= 12) ? ehour : (ehour % 12),eminute, ((ehour < 12) ? "AM" : "PM")); printf("%s\n", events_today[i]->event_string); i++; } } @//E*O*F psched.c// chmod u=rw,g=,o= psched.c exit 0