home *** CD-ROM | disk | FTP | other *** search
/ GEMini Atari / GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso / files / acc / calendar / cal62b / cal62.doc next >
Encoding:
Text File  |  1992-03-28  |  88.2 KB  |  1,855 lines

  1.                          Cal v6.2: The Calendar Program
  2.                         Copyright (c)1992 by Bill Aycock
  3.  
  4.  
  5. Ever forgotten your anniversary or your kid's birthday? Missed a TV show
  6. because you didn't remember what day it was on? Went to work an hour late (or
  7. even worse, early!) when you forgot to reset your clock for Daylight Savings
  8. Time? If this has happened to you, Cal may be able to help!
  9.  
  10. Cal is a calendar program with a difference - it lets you attach 'events' to
  11. any day of the year by date, according to a day's position in the month, or on
  12. a regular cycle. When Cal loads, it reads the current date from your system
  13. clock and checks to see if any significant events are scheduled for the day. If
  14. so, Cal displays an alert that shows you the day's events. (When Cal loads as
  15. an ACC, it dings the system bell if a significant event is scheduled.) Cal can
  16. also communicate with CodeHead's HotWire (v2.1 or newer) to set up the day's
  17. alarms automatically!
  18.  
  19. Also included in this ARC file is Calshow, a program that reports on the
  20. events you've stored in Cal and functions as an AUTO program, a full GEM-based
  21. program, or a desk ACC. As an AUTO program, CalShow will read the events from
  22. Cal and display upcoming events on screen, then pause so you can easily see
  23. what's on tap for the next couple weeks. This should give you plenty of time to
  24. plan for upcoming events!
  25.  
  26.  
  27. ====================================================
  28.  
  29.                     CONTENTS
  30.  
  31.  
  32.        0. New Stuff in This Version
  33.  
  34.        1. Installation
  35.          1.1. Installing from Scratch
  36.          1.2. Converting from Older Versions
  37.          1.3. DC-Squish Notes
  38.          1.4. Limits
  39.  
  40.        2. Cal
  41.  
  42.          2.1. Concepts
  43.            2.1.1. Event Types
  44.            2.1.2. Importance
  45.  
  46.          2.2. Startup Actions
  47.            2.2.1. Initialization and HotWire Alarms
  48.            2.2.2. Alert Dialog
  49.            2.2.3. Expired Event Dialog
  50.  
  51.          2.3. Main Calendar
  52.            2.3.1. Types of Days
  53.            2.3.2. Changing the Year or Month
  54.            2.3.3. Looking at a Specific Day
  55.            2.3.4. General Information
  56.            2.3.5. Other Buttons
  57.  
  58.          2.4. Extras Dialog
  59.            2.4.1. Days Between Two Dates
  60.            2.4.2. Date of Easter
  61.  
  62.          2.5. Preferences Dialog
  63.            2.5.1. Desk Menu Entry
  64.            2.5.2. When An Event Expires
  65.            2.5.3. Other Settings
  66.  
  67.          2.6. File Dialog
  68.            2.6.1. Cal File Types
  69.            2.6.2. Loading
  70.            2.6.3. Saving
  71.            2.6.4. Merging
  72.            2.6.5. Talking with Other Cals
  73.            2.6.6. Mass Erase Dialog
  74.            2.6.7. Setting HotWire Alarms
  75.            2.6.8. Checking Expired Events
  76.  
  77.          2.7. Scan Dialog
  78.            2.7.1. Concepts
  79.            2.7.2. How Scanning Works
  80.            2.7.3. Scan Display
  81.            2.7.4. Finding Events
  82.            2.7.5. Scan Options
  83.  
  84.          2.8. Find Dialog
  85.            2.8.1. Search String
  86.            2.8.2. Type, Status, Importance Filters
  87.  
  88.          2.9. Edit Dialog
  89.            2.9.1. Edit Mode
  90.            2.9.2. Fields on the Edit Screen
  91.            2.9.3. Looking at Events
  92.            2.9.4. The When Dialog
  93.            2.9.5. Changing Existing Events
  94.            2.9.6. Adding New Events
  95.            2.9.7. Erasing Events
  96.  
  97.        3. Calshow
  98.          3.1. Running from the AUTO Folder
  99.          3.2. Running as a PRG or ACC
  100.            3.2.1. Calshow Prefs
  101.            3.2.2. This Run Only
  102.  
  103.        4. Final Notes, Version History
  104.  
  105.        5. Keyboard Shortcuts
  106.          5.1. Main Calendar
  107.          5.2. Alert Dialog
  108.          5.3. Edit Dialog
  109.          5.4. Expired Event Dialog
  110.          5.5. Extras Dialog
  111.          5.6. File Dialog
  112.          5.7. Find Dialog
  113.          5.8. Mass Erase Dialog
  114.          5.9. Preferences Dialog
  115.          5.10. Scan Dialog
  116.          5.11. When Dialog
  117.          5.12. Calshow Dialog
  118.  
  119.  
  120. ====================================================
  121.  
  122.  
  123. 0. New Stuff in This Version
  124.  
  125.  
  126. New in Version 6.2:
  127.  
  128. A number of changes to both Cal and Calshow give you more information and
  129. should make the programs more useful as scheduling aids. Highlights:
  130.  
  131. Calshow:
  132.  
  133. >> The alarm time for each event is now listed on all displays. In addition,
  134. the events for each day are sorted by alarm time and importance, so a day's
  135. events are listed in the order in which they occur. Events that have an alarm
  136. time attached are shown preceding events with no alarm time. This means the
  137. alarm time field is useful even if you don't have HotWire!
  138.  
  139. >> The Calshow dialog now offers two new quick-view buttons, "Week" and
  140. "Today". These buttons let you instantly see all events scheduled on the
  141. current date, or on the current date plus the next week. Unlike Calshow's
  142. normal mode, the advance notice for your events is ignored so you get a full
  143. list of all upcoming events in the chosen time span.
  144.  
  145. >> Instead of exiting after Calshow completes a display, you now return to
  146. the Calshow dialog. This makes it easy to flip between the Today and Week
  147. quick-views, the normal Coming Events list, and displays of a specific time
  148. span.
  149.  
  150. >> The Help key now makes Calshow wait for any keypress before continuing,
  151. instead of merely resetting the wait time. If you have a full screen of
  152. events to look at, you won't need to keep hitting the Help key!
  153.  
  154. >> You may click the "Importance Filters" title to toggle all the filters on
  155. or off, making it easier to select events by importance level. If you
  156. double-click the title, all importance filters will be selected.
  157.  
  158. Cal:
  159.  
  160. >> The Cal dialog can now be moved around the screen. The dialog's relative
  161. position is saved whenever you save your Cal setup. If you wish, you can have
  162. Cal use this saved location whenever it runs. (This will be most useful for
  163. those with large-screen monitors.)
  164.  
  165. >> The beginning of each event in the Alert Dialog is now marked with a
  166. small symbol, making it easier to tell where one event ends and the next
  167. begins. The symbol is a triangle for a normal event, or a clock face for an
  168. event that has an alarm attached. If you click on a clock face, the alarm time
  169. for that event is displayed in the box at the top of the dialog.
  170.  
  171. >> The Scan Dialog now shows more information. The title bar shows you how
  172. many events are currently selected and the total number of events you've
  173. defined. The alarm time is displayed on the small schedule line above each
  174. event, and if the event is a one-time date event occurring in a single month,
  175. the day of the week is also displayed.
  176.  
  177. >> The Scan Dialog also includes a small bullet next to each event; if you
  178. click on the bullet, the event is 'hidden' (deselected). This allows you to
  179. select any arbitrary group of events. Once you have a group selected, some
  180. additional options are available by clicking the title bar - you may either
  181. erase all the selected events, or swap the 'selected' status of all events.
  182. This feature should make it easier to manage a large collection of events.
  183.  
  184. >> The Extras Dialog now offers another type of date calculation. In
  185. addition to finding the date of Easter or the number of days between two
  186. dates, you may add or subtract any number of days from a base date and find
  187. the resulting date.
  188.  
  189. >> The Edit Dialog shows you more information for any cyclic event. The small
  190. text field that shows how many days it will be to the next occurrence now
  191. also displays the date of the next occurrence.
  192.  
  193. >> There is also a new "Show When" button on the cyclic event edit screen.
  194. Clicking this button will bring up a new When Dialog that lists the date and
  195. day of the week of every occurrence of the event. If you click on a date, you
  196. will return to the calendar screen with that date's month displayed.
  197.  
  198.  
  199. ====================================================
  200.  
  201.  
  202. 1. Installation
  203.  
  204.  
  205. 1.1. Installing from Scratch
  206.  
  207. Installing Cal and CalShow is simple. Cal comes ready to go, pre-configured
  208. with over a hundred commonplace and obscure events. To use Cal, either install
  209. it as a desk accessory in the normal fashion, or just run it as a program. Cal
  210. uses well under 90K of memory, and runs on any ST or TT in any resolution.
  211.  
  212. Likewise, CalShow can run as a normal GEM program from the desktop or as a
  213. desk accessory. However, CalShow can also run from the AUTO folder, so you can
  214. be reminded of upcoming events every time you boot your system. To do so,
  215. create a folder named AUTO on your boot disk and copy CSHOW62.PRG into it. Like
  216. Cal, CalShow can run in any resolution on any ST or TT. It uses under 50K as an
  217. accessory.
  218.  
  219. NOTE: You can also place Cal in your AUTO folder if you want. It won't _do_
  220. much of anything when you boot up, but it won't crash your system! <grin>
  221.  
  222.  
  223. 1.2. Converting from Older Versions
  224.  
  225. In the past, upgrading to a new version of Cal meant either running your old
  226. version and saving your events in the new one, or running a separate conversion
  227. program (in the case of moving from 4.x to 5.x). It's even easier now!
  228.  
  229. Even though Cal's database format has changed again, Cal 6 lets you load
  230. events _directly_ from a version 5.x Cal file. Simply run Cal 6, click the File
  231. button, click the Load button, and use the item selector to find your old copy
  232. of Cal. Cal 6 will read in all your events and convert them to the new format
  233. automatically. In the process, HotWire alarm information is removed from your
  234. messages and stored in the new alarm settings fields, and the importance of
  235. each event is set to level 7 for significant events, level 4 for normal events,
  236. and level 1 for trivial events.
  237.  
  238. When you return to the File dialog, click Save to store your new events into
  239. the Cal 6 program file. Simple!
  240.  
  241.  
  242. 1.3. DC-Squish Notes
  243.  
  244. Cal and Calshow are compatible with DC-Squish 1.4, Double Click's program
  245. compressor. This little jewel basically lets you "arc" your programs and desk
  246. ACCs to save space on your disk. The program is automatically unArced when you
  247. run it (or load the ACC). Another advantage of DC-Squish is that since the
  248. program files are smaller, they generally load a bit quicker (especially from a
  249. floppy). DC-Squish is a part of the DC Utilities package available wherever you
  250. buy ST software.
  251.  
  252. To squish Cal and Calshow, simply follow the DC-Squish instructions. When you
  253. click the "Squish" button, you should see an alert that says "offset protocol
  254. recognized- use it?".
  255.  
  256.             IMPORTANT: YOU MUST ANSWER YES TO THIS QUESTION!!!
  257.  
  258. This makes DC-Squish compress the program part of Cal and Calshow, but leave
  259. the embedded data alone. If you answer No instead, you will not be able to save
  260. your events in Cal, and Calshow won't be able to read Cal's event data! (If
  261. your copy of DC-Squish doesn't support the 'offset protocol', DO NOT use it on
  262. Cal or Calshow- upgrade to the latest version of the DC Utilities!)
  263.  
  264.  
  265. 1.4. Limits
  266.  
  267. Cal 6 provides around 20K of space for the event database, and enough room to
  268. hold 511 events in its index. There are no limitations for any group of events
  269. (e.g., events on a single day, events to be scanned) other than those imposed
  270. by the size of the database and index.
  271.  
  272. If each of your events uses every character on all three lines available for
  273. the message, Cal will run out of room at around 166 events. If you define the
  274. maximum number of events, then each event can have a message 17 characters in
  275. length. In practice, most users will fall somewhere between these two limits.
  276.  
  277.  
  278. ====================================================
  279.  
  280.  
  281. 2. Cal
  282.  
  283.  
  284. 2.1. Concepts
  285.  
  286. Cal is, among other things, a universal calendar. You can use Cal to see the
  287. calendar of any month in any year from the year 1 to the year 9999. But more
  288. than that, Cal is designed to help you remember birthdays, anniversaries, TV
  289. shows, and more- any event that occurs on a particular day. It works equally
  290. well for weekly TV shows, monthly meetings, birthdays that only roll around
  291. once a year, or once-in-a-lifetime experiences. This section explains some
  292. basic concepts that will help you make the most of Cal and Calshow.
  293.  
  294.  
  295. 2.1.1. Event Types
  296.  
  297. The concept of an "event" is central to Cal. Webster defines an event as
  298. "that which comes, arrives, or happens, especially an incident of importance".
  299. In Cal, an event is any incident that occurs on one day. Cal recognizes four
  300. basic types of events: recurring date events, one-time date events, positional
  301. events, and cyclic events.
  302.  
  303. A "date event" is any event that occurs on a specific date in a month.
  304. Birthdays and anniversaries are date events; some holidays, such as New Years
  305. and Christmas, are date events. Bills that are due on the 15th of the month are
  306. date events.
  307.  
  308. The above examples are "recurring" date events, since they occur more than
  309. once. Birthdays and holidays happen every year, bills are due every month. The
  310. other type of date event is a "one-time" event. If you have a dentist
  311. appointment on September 21st, 1991, you can set it up as a one-time event. The
  312. difference between one-time and recurring date events is that recurring events
  313. happen over and over, while one-time events occur in one specific year; after
  314. the event has passed, it's no longer valid- it "expires".
  315.  
  316. The third type of event is the "positional event". You schedule a positional
  317. event by its position in the month. Examples: Thanksgiving Day is always the
  318. fourth Thursday in November; the last Sunday in October is the end of Daylight
  319. Savings Time. Ptaug, our local Atari users group, holds meetings on the last
  320. Wednesday of every month except July and December.
  321.  
  322. Cal 6 provides a fourth event type, the "cyclic event". Cyclic events are
  323. those which occur repeatedly over a fixed time span, every so many days. If you
  324. get paid every two weeks, add a cyclic event for every 14 days to remind you.
  325. If you need to mark your summer vacation so you won't schedule a meeting during
  326. that time, you can set up a cyclic event that occurs every day during that
  327. time. Cal allows cyclic events to occur every one to 255 days over a period
  328. of up to 100 years. Just tell Cal the date of a cyclic event's first
  329. occurrence, how often it occurs, and an ending date after which the event
  330. expires.
  331.  
  332.  
  333. 2.1.2. Importance
  334.  
  335. Another basic concept is that of an event's "importance". Starting with Cal
  336. 6.0, an event can have an importance level of zero to nine, with zero as the
  337. least important and nine as the most. The importance level affects the way Cal
  338. displays an event, and gives you another way to select groups of events as
  339. you'll see later.
  340.  
  341.  
  342.  
  343. 2.2. Startup Actions
  344.  
  345. Several important things happen when you start Cal. If you run Cal as a
  346. program, these actions occur all at once; if you load Cal as an accessory
  347. instead, some things happen when the accessory loads and others don't occur
  348. until you select the accessory from the Desk menu.
  349.  
  350.  
  351. 2.2.1. Initialization and HotWire Alarms
  352.  
  353. Cal starts out by checking if it's running from the AUTO folder. Any program
  354. that relies on GEM cannot run while your ST is just booting up. Most GEM
  355. programs don't check to see if they're running at boot time, and simply crash
  356. your system... Cal DOES check, and DOESN'T crash- it just displays a short
  357. message on your screen and gracefully quits.
  358.  
  359. Next, Cal reads your system clock to find out what day it is. Then it checks
  360. to see if any events are scheduled for the current day. If an event is
  361. scheduled, two things happen. First, Cal checks to see if CodeHead's HotWire is
  362. active. (HotWire is an enhanced desktop replacement- very powerful, easy to
  363. use... highly recommended!) If it is, Cal can set up to sixteen HotWire alarms
  364. for you, to keep you on track during the day! (Note: Cal is smart enough to
  365. skip setting alarms for times that have already passed. Also, Cal won't set
  366. alarms that already exist, so you don't need to worry about having a dozen
  367. copies of the same alarm go off at once. :-) HotWire must be at version 2.1 or
  368. above for this feature to be active.
  369.  
  370. Then, if Cal is loading as an accessory, it will ding the system bell to
  371. remind you that something is happening today.
  372.  
  373.  
  374. NOTE: Cal will set your alarms as soon as he initializes. Also, every time
  375. you go to the main calendar screen Cal will check to see if today's date has
  376. changed. If so, Cal will automatically set your alarms for the new day. You
  377. can also ask Cal to set the day's alarms at any time from the File dialog;
  378. more on that later.
  379.  
  380. ANOTHER NOTE: If you own CodeHead's MultiDesk Deluxe and you set up Cal as a
  381. non-resident accessory, you MUST include the "-I" parameter in your TITLES.MDX
  382. file if you want to set HotWire alarms when you boot! This parameter tells
  383. MultiDesk to let Cal perform its initialization - which includes setting the
  384. day's alarms - when you boot up your system. Cal will still work fine as a
  385. non-resident ACC without the -I parameter, but your alarms won't be set until
  386. you actually choose Cal from the MultiDesk menu. For further information, see
  387. Appendix A in the MultiDesk Deluxe user guide.
  388.  
  389.  
  390.  
  391. Next there's a break in the action. If Cal is running as an accessory,
  392. nothing else happens right now- the rest of the initialization waits until the
  393. first time you select Cal from the Desk menu. If you're running Cal as a
  394. program, there's no pause; it keeps right on truckin' along.
  395.  
  396.  
  397. 2.2.2. Alert Dialog
  398.  
  399. The next step of Cal's initialization is to let you know about any events
  400. scheduled for the day. If nothing is on tap, this step is skipped; otherwise,
  401. Cal brings up the Alert Dialog.
  402.  
  403. The title bar at the top of this dialog will normally read "Events of the
  404. Day". However, if Cal tried setting any HotWire alarms for you, the title bar
  405. will tell you so. It will also let you know if Cal was unable to set one or
  406. more of your alarms; be sure to read the message to find out the status of the
  407. day's HotWire alarms.
  408.  
  409. NOTE: If the MOST important event on a given day has an importance level of
  410. zero, the Alert Dialog will NOT be displayed automatically. The only time this
  411. is not the case is when the level-zero event is an alarm, HotWire is active,
  412. and Cal was unable to set the alarm for you. If this happens, Cal will display
  413. the alert so you can see the error message.
  414.  
  415. The upper box of this dialog shows the day of the week, date, and year, plus
  416. the Julian date (that's the day of the year, folks) and how many days remain in
  417. the year. The main part of the dialog is a large box that lists the events
  418. scheduled for the day.
  419.  
  420. This box can show up to eight events at a time, depending on how many lines
  421. of text each event contains. If all of the messages for the day fit on this
  422. screen, the "next page" button at the bottom of the screen will be grayed out;
  423. if there are too many messages to display at once, you can click this button to
  424. view the rest of the events. Each click shows you the next few events; after
  425. the last waiting event is displayed, Cal 'wraps around' to the first one and
  426. starts over. Unlike older versions, there is _no limit_ to the number of events
  427. Cal can display on a single day (other than the total number of events defined,
  428. that is)... but if you end up with more than 50, I'd _still_ recommend hiring a
  429. secretary. :-)
  430.  
  431. The first line of each event is marked with a small symbol, either a triangle
  432. (for a normal event) or a clock face if the event has an associated alarm. This
  433. makes it easy to see where one event ends and the next begins. In addition, you
  434. may click on a clock face; this will display the event's alarm time in the box
  435. at the top of the dialog.
  436.  
  437. You may edit an event from this screen if you wish; click on the message text
  438. or on an unused slot in the display (or press a number key on the numeric
  439. keypad). This takes you to the Edit Dialog; more on that later. Since we're
  440. still booting up, click the Cancel button or just hit Return and Cal will
  441. finish its initialization.
  442.  
  443.  
  444. 2.2.3. Expired-event Dialog
  445.  
  446. As the last step of its initialization, Cal searches your events looking for
  447. one-time date events and cyclic events. If any are found, Cal looks to see if
  448. each event's last occurrence has passed; if so, then the event has expired.
  449.  
  450. One of three things happens next. First, Cal can ignore the fact that the
  451. event has expired, and just continue initializing. Second, Cal can go ahead and
  452. erase the old event for you automatically. Third, Cal can ask you what to do
  453. with the event. Which of these happens depends on how you've set up Cal; the
  454. initial setting is for Cal to ask you what to do, but you can change this to
  455. your taste. (See the Preferences section for information on how to do this.)
  456.  
  457. Cal asks you what to do with an expired event by displaying the Expired Event
  458. Dialog. The top of this dialog shows the event and the day it was scheduled to
  459. occur. The buttons on this dialog will let you erase the event, leave it alone
  460. for the moment, or convert a one-time date event to a recurring event.
  461.  
  462. If you prefer to wait until later to look through the expired events, press
  463. the UNDO key to cancel the process. When you have more time, you can start the
  464. process again from the File menu.
  465.  
  466.  
  467.  
  468. 2.3. Main Calendar
  469.  
  470. Most of Cal's main screen is taken up by a calendar display. The month and
  471. year of the calendar is shown right underneath the display, and there is a
  472. column of month buttons to the right. There are plenty of other buttons too; in
  473. fact, almost anything you click on will do something <grin>. More about that in
  474. just a minute...
  475.  
  476.  
  477. 2.3.1. Types of Days
  478.  
  479. The calendar display has changed significantly from older versions. If Cal is
  480. showing the current month and year, then today's date will be highlighted
  481. (white numbers on a black background). Days in the preceding and following
  482. months are grayed out. The other days in the month may be surrounded by boxes
  483. of varying thickness. These borders indicate the importance level of the _most
  484. important_ event falling on that date... a heavy border means an important
  485. event (levels 7 to 9) occurs that day, a medium border means the most important
  486. event is between four and six, and a skinny border means that a level 1 to 3
  487. event occurs. If there is no border surrounding a day, then only level zero
  488. events occur then (or, of course, nothing at all is scheduled that day).
  489.  
  490.  
  491. 2.3.2. Changing the Year or Month
  492.  
  493. There are a couple ways to look at different months and years. First notice
  494. the column of buttons to the right of the calendar. These buttons are labeled
  495. with the names of the months; click one of these buttons to move directly to
  496. that month. The bottom two buttons are labeled Next and Prev, and will skip
  497. forward or back one month. (Also note that the buttons are marked like the top
  498. row of keys on your keyboard, with numbers 1 to 0 plus - and =... pressing one
  499. of these keys will act just like clicking the appropriate month button. You may
  500. also use the numeric keypad keys 1-9, (, ), and / to select a month. The left
  501. and right arrow keys move you forward or back a month like the Next and Prev
  502. buttons.)
  503.  
  504. Next, note the arrow and double-arrow buttons right underneath the calendar.
  505. These buttons, or the up and down arrow keys, move the display forward or back
  506. one or ten years at a time.
  507.  
  508. If you want to look at a specific year, click on the box that shows the
  509. current month and year. When you do this, you see a dialog that allows you to
  510. type in the year you want. You'll probably find this easier than clicking the
  511. up and down buttons.
  512.  
  513.  
  514. 2.3.3. Looking at a Specific Day
  515.  
  516. To find out more about a specific day or discover the reason for a border
  517. around a number, simply click directly on that day in the calendar. This takes
  518. you to the Alert Dialog which we (I :-) talked about earlier. You'll see the
  519. date spelled out and a list of the day's events.
  520.  
  521. (Incidentally, this is the easiest way to add a new event to Cal -- look at
  522. the month the event falls in, and click on the day. When the Alert Dialog shows
  523. up, click on the text of any message or on an empty message slot. You'll go to
  524. the Edit Dialog, with the date preselected, ready to add a new event. We'll
  525. discuss that part later; right now, let's finish up with the main screen.)
  526.  
  527.  
  528. 2.3.4. Other Buttons
  529.  
  530. The buttons across the bottom of the main calendar screen will take you to
  531. several other dialogs, which are explained in detail below.
  532.  
  533. The question-mark button takes you to the Extras dialog, where you can find
  534. the date of Easter or perform date calculations.
  535.  
  536. Today, obviously enough, tells Cal you want to see the calendar of the
  537. current month. If you already looking at the current month, then Cal will show
  538. you the Alert for today's date.
  539.  
  540. The Prefs button allows you to customize Cal's behaviour from the Preferences
  541. dialog.
  542.  
  543. The File button lets you load or save Cal's events, erase an entire month's
  544. worth of events at once, or check Cal's database for events which have
  545. expired.
  546.  
  547. The Scan button moves you to the Scan Dialog, where you can see a number of
  548. events at once.
  549.  
  550. The Quit button lets you exit Cal.
  551.  
  552. NOTE: Cal keeps track of whether you change any of your events or customize
  553. Cal's setup. If you look right under the column of month buttons, you'll see
  554. the word SAVED or CHANGED to remind you.
  555.  
  556. If you've changed something during your Cal session but haven't saved your
  557. changes, you get a chance to do so when you click Quit. An alert appears that
  558. asks you if you want to save the new information, resume what you were doing in
  559. Cal, or go ahead and quit. Choose the one you feel is most appropriate. If you
  560. select Save, the GEM item selector will appear so you can locate the Cal file.
  561. (If you press the Alt key when you select Save, you'll go to the File dialog so
  562. you can save to a file or to a Cal ACC.) After you save your events to a file
  563. successfully, you'll exit Cal; otherwise you'll return to the main dialog.
  564.  
  565. WARNING: If you run Cal as a program (or a non-resident ACC) and decide to
  566. exit without saving your changes, they're GONE. If you're running Cal as a
  567. regular accessory, your changes will still be in place when you next open the
  568. ACC (and, if you _still_ don't save your setup, you'll be reminded when you try
  569. to exit again).
  570.  
  571. ANOTHER NOTE: One of your options is to have Cal erase expired events for you
  572. automatically. When this happens, the event is removed from the copy of Cal
  573. currently in your Atari's memory. This means Cal's setup can change _even if
  574. you don't do anything_! If you see the "setup has changed" alert when you exit
  575. Cal but you haven't changed anything, it's probably because Cal has erased an
  576. expired event for you.
  577.  
  578.  
  579. The last button on the main screen is the largest one- it's the main title
  580. bar that normally reads "Calendar 6.2". When you click on the title bar, you go
  581. to a special screen that shows you the current version number and release date,
  582. how many of each event type is currently defined, and where to send your
  583. shareware donation <grin>. Press any key or click the mouse button to exit this
  584. screen.
  585.  
  586. The title bar also allows you to reposition Cal's dialog on the screen. Click
  587. on the title bar and hold down the mouse button, then drag the outline of the
  588. dialog to the desired location and release the button. The relative position
  589. of the dialog is saved whenever you save your setup; if you wish, you can tell
  590. Cal to use this saved position automatically when it starts up.
  591.  
  592.  
  593.  
  594. 2.4. Extras Dialog
  595.  
  596. The Extras dialog is a simple screen that lets you find the number of days
  597. between two dates or the date of Easter for a given year, or lets you add or
  598. subtract some number of days from a base date and find the resulting date.
  599.  
  600. Use the top half of the dialog to perform date calculations. Enter a base
  601. date at the top, then type in a date (to find the days between) or a number of
  602. days (to calculate a new date), then press Enter. The two radio buttons let you
  603. choose USA (month/day/year) or European (day/month/year) style dates.
  604.  
  605. If you leave part of a field empty, Cal will use the current date (month,
  606. day, or year) for that value. If you leave both empty, Cal will gladly tell you
  607. that there are zero days between today and today. :-)
  608.  
  609. The bottom half of the dialog will calculate the date of Easter for a given
  610. year. (Betcha didn't know you could calculate that, did ya? :-) Type in a year
  611. and hit Enter, and Cal will tell you when Easter falls that year.
  612.  
  613. Click Exit or press Undo to leave the Extras dialog.
  614.  
  615.  
  616.  
  617. 2.5. Preferences Dialog
  618.  
  619. As was mentioned above, you can customize several aspects of Cal's behaviour.
  620. These include the handling of expired events, whether to use USA or European
  621. dates, and a number of other options. To change any of these items, click  the
  622. Prefs button on Cal's main calendar screen.
  623.  
  624. 2.5.1. Desk Menu Entry
  625.  
  626. The top of this dialog contains a text field labelled "Desk Accessory Menu
  627. Entry". When you run a fresh copy of Cal as a desk accessory, it shows up in
  628. the menu as "Calendar 6.2". If you wish, you can change this entry by typing in
  629. a new entry to use. If you have a large number of events to keep track of, you
  630. may want to split them up between two or more copies of Cal... this feature
  631. gives you a way to distinguish between the different copies in the Desk menu.
  632. (The string you type in here also shows up in the main screen's title bar, so
  633. you can tell which copy of Cal you're running.)
  634.  
  635. NOTE: When Cal runs as a non-resident ACC under MultiDesk Deluxe, the entry
  636. in MultiDesk's menu comes from a special list you set up in your TITLES.MDX
  637. file. That means if you change the title here, it WON'T automatically change.
  638. See your MultiDesk Deluxe guide for more information.
  639.  
  640.  
  641. 2.5.2. When An Event Expires
  642.  
  643. Underneath the menu entry field are a number of radio buttons. The lower left
  644. group lets you tell Cal how to handle an expired event. There are three buttons
  645. in this group: Erase the event, Leave it alone, and Ask what to do. If you
  646. select Leave It, then Cal will never check for expired events unless you choose
  647. to do so from the File dialog. If you select Ask, then Cal will ask you what to
  648. do with each expired event when you first run Cal. You can also select Erase
  649. It- when you do, Cal will automatically erase any event that has expired.
  650.  
  651. NOTE: You must save your Cal setup to disk after an expired event has been
  652. erased; otherwise it will still be in Cal's database on disk, and will be there
  653. the next time you load Cal. Also, Cal keeps track of any changes that were made
  654. in a session. When you exit Cal, it checks to see if you've saved your changes-
  655. if not, you'll see an alert asking if you want to save your changes. Remember
  656. that if _Cal_ erases an expired event for you, you may see this alert even
  657. though _you_ haven't changed anything!
  658.  
  659.  
  660. 2.5.3. Other Settings
  661.  
  662. Between the menu entry and expiration setting is a box labeled "Default
  663. Values". When you add an event, you can assign a particular number of days of
  664. advance notice for the event; Calshow pays attention to this number when it
  665. builds its display. The first field in the Default Values box is marked
  666. "days:", and tells Cal what value to use as the default notice whenever the
  667. Edit dialog shows you an empty template. The second field is marked "level:",
  668. and allows you to set the default importance level for new events.
  669.  
  670. The right side of the Prefs dialog has a box labeled Options which control a
  671. number of features. In each case, select the button next to a feature you want
  672. to turn on or deselect the button to turn the feature off:
  673.  
  674. The 'Alarms' button gives Cal permission to set HotWire alarms. IF THIS
  675. BUTTON IS NOT SELECTED, CAL WILL NEVER SET ANY HOTWIRE ALARMS ON ITS OWN! The
  676. only way to set alarms when this button is not selected is to choose the Set
  677. Alarms option from the File dialog.
  678.  
  679. The button marked 'Beeps On' asks Cal to ding the ST's bell whenever a GEM
  680. alert is displayed. You shouldn't see many alerts normally, but feel free to
  681. turn off the beeps if you wish.
  682.  
  683. When the 'Euro Date' button is selected, the European day/month/year style is
  684. used for all dates instead of the USA style month/day/year. (Actually, in most
  685. cases Cal will display the month name spelled out, or the first three letters
  686. of the name. Or, to show a number of months at once, Cal displays a string with
  687. the first letter of each month name, or a period if the month isn't selected.
  688. Example: "JF........ND" indicates January, February, November, and December.)
  689.  
  690. You may select the button marked '24hr Time' if you would prefer to see alarm
  691. times in military 24-hour time instead of 12-hour AM/PM time. This setting
  692. affects the display in the Scan dialog and the Alert dialog.
  693.  
  694. The 'Zoomboxes' button asks Cal to draw decorative shrinking boxes when
  695. changing from one dialog to another. Unless you have a fast machine and a
  696. blitter, you'll probably want to leave this button deselected. :-)
  697.  
  698. If the 'Location' button is selected, Cal will use the saved position of the
  699. dialog when it appears. Otherwise, the dialog will be centered on screen. (The
  700. location is saved as a relative position, so you never need to worry about
  701. Cal's dialog appearing halfway off the screen!)
  702.  
  703. The last section of buttons in the Prefs dialog lets you decide if you want
  704. to be warned before you add, replace, or erase an event. Some people find these
  705. alerts irritating, intrusive, or excessive, so I've supplied a way to turn them
  706. off. Simply deselect the button, and be sure to save your changes. (Note: in
  707. older versions, the alerts occurred after the fact. That was like locking the
  708. barn door after the horse escaped, and I asked myself many times why I did that
  709. <g>. They work correctly now, and ask you BEFORE the event so you get a chance
  710. to change your mind.)
  711.  
  712.  
  713. After you make any changes in the Preferences dialog, be sure to save the new
  714. information in the Cal program file! Either save the information from the File
  715. dialog, or you'll have a chance to do so when you exit Cal.
  716.  
  717.  
  718.  
  719. 2.6. File Dialog
  720.  
  721. The File Dialog allows you to save the events and preferences you've stored
  722. in Cal. There are also options to reload a new set of events into Cal, merge
  723. the events from a Cal file into Cal without erasing what's already there, erase
  724. a number of events at once, check to see if any of your events have expired, or
  725. set HotWire alarms for the day.
  726.  
  727. There are several important concepts to keep in mind here:
  728.  
  729.    1. BEFORE you run Cal or load it as a resident desk accessory, all
  730.       your events and preferences are stored IN THE CAL PROGRAM FILE.
  731.  
  732.    2. AFTER you start Cal or load it as a resident desk accessory, your
  733.       events and preferences are stored IN YOUR COMPUTER'S MEMORY.
  734.  
  735.    3. Once Cal is running, CAL HAS NO CONNECTION WITH THE ACTUAL PROGRAM
  736.       FILE ON DISK.
  737.  
  738.    4. This means that any changes you make in Cal - adding new events,
  739.       changing existing events, or setting new preferences - ONLY AFFECT
  740.       THE COPY OF CAL IN YOUR ST'S MEMORY! If you want to make your
  741.       changes permanent, you must SAVE your setup to the program file.
  742.  
  743.    5. This also means that once Cal is running as a standard accessory,
  744.       CHANGES YOU MAKE TO THE PROGRAM FILE DO NOT AFFECT THE CAL ACC!
  745.       If Cal is running as an ACC, and you run Cal separately as a program,
  746.       the changes you make to the PROGRAM will NOT show up in the ACC
  747.       until you load the new setup from disk (or save it to the ACC).
  748.  
  749.  
  750. 2.6.1. Cal File Types
  751.  
  752. There are two basic types of Cal files. The first is the Cal program file
  753. itself. Your events are stored in the actual program file until Cal starts up.
  754. (Note: the format of Cal 6's database is not identical to older versions. Cal 6
  755. will let you load your events from an older 5.x version, but you will not be
  756. able to save to an old version.)
  757.  
  758. The second type of Cal file is an external Cal data file. Starting with
  759. version 6.0 of Cal, you can save your _events only_ to a separate file for
  760. archiving, transporting, or other special uses. A Cal data file is around 20K
  761. in size and contains only the event database; no preferences or program code.
  762.  
  763. Note: Versions 4.9 and up of the Whatis File Identifier can recognize Cal
  764. data files. The latest versions of Whatis and Cal can always be found on
  765. Compuserve's Atari Productivity Forum (GO ATARIPRO at any ! prompt).
  766.  
  767.  
  768. 2.6.2. Loading
  769.  
  770. The Load From File button in the File dialog lets you completely replace
  771. Cal's events with those stored in a disk file. Click the Load button, use the
  772. item selector to choose a file from which to load, and click OK. If the
  773. operation was successful, Cal will contain the same events that are present in
  774. the disk file.
  775.  
  776. You can load events from either the Cal program file or from an external Cal
  777. data file. When you load from the program file, your preferences are loaded at
  778. the same time. If you load from a Cal data file instead, only your events are
  779. changed (since the data file doesn't contain any preference data).
  780.  
  781. Cal 6 will also let you load your events (but not preferences) from a copy of
  782. Cal version 5. As the events are loaded, they are converted to the new Cal 6
  783. format automatically. This makes it simple to convert to Cal 6 from an older
  784. version of Cal.
  785.  
  786.  
  787. 2.6.3. Saving
  788.  
  789. The Save To File button allows you to save your events to a disk file. To
  790. save all your events and preference settings to the Cal program file, click
  791. Save, use the item selector to locate Cal, then click OK. If the operation was
  792. successful, your copy of Cal on disk will contain the same information as the
  793. copy of Cal that is currently running.
  794.  
  795. You also have the option of creating a separate Cal data file, or saving your
  796. events to an existing Cal data file. To create a new file, simply type a new
  797. filename when the item selector appears. You'll be told that the file doesn't
  798. exist, and asked if you wish to create a new file; click Yes or hit Return, and
  799. Cal will save all your events into a new data file.
  800.  
  801. It's even easier to save your events to an existing Cal data file - just
  802. select the data file with the item selector, as if it were the Cal program
  803. file. Cal can tell which type of file you've selected, and will save in the
  804. correct format automatically.
  805.  
  806. Reminder: Cal 6 cannot save events to an older version of Cal. If you see an
  807. alert that says "Not Cal, or wrong version", try again and be sure you select
  808. your version 6 file.
  809.  
  810.  
  811. 2.6.4. Merging
  812.  
  813. Cal 6 adds the ability to 'merge' events from any version 6 Cal program or
  814. data file into its database. When you merge events, none of the events
  815. currently in Cal are changed - Cal reads the events from the file one by one,
  816. and if they are not already present, they are added to what's already there.
  817. Exact duplicates are ignored, so you won't need to worry about having two
  818. copies of each event.
  819.  
  820. Events cannot be merged from an older version of Cal. To accomplish this,
  821. first save the events you've defined in Cal to an external data file, then load
  822. the events from your older version. When that's complete, you can merge the
  823. events from the data file you created.
  824.  
  825.  
  826. 2.6.5. Talking with Other Cals
  827.  
  828. Versions 6.1 and later of Cal have the ability to communicate with any Cal
  829. ACCs in your system. If you have Cal installed as an accessory and then run Cal
  830. as a program, the program will be able to read the events from or save a new
  831. set of events into the accessory. If you have two or more copies of Cal running
  832. as ACCs, each will be able to read or write the events stored in the other.
  833. This communication is controlled by three buttons and an editable text field in
  834. the File Dialog.
  835.  
  836. The two buttons on the right of the dialog, under the Save to File button,
  837. are labelled 'load from acc' and 'save to acc'. When these buttons are enabled,
  838. you can use them to read or write events from an active Cal ACC just as you
  839. would from a Cal program file.
  840.  
  841. To the left is a button marked 'rescan for acc', and underneath this button
  842. is a box marked 'name' with a text entry field. These two objects control which
  843. copy of Cal you are talking to.
  844.  
  845. When your ST loads an accessory, GEM keeps track of the file name. Later,
  846. applications can ask GEM if a particular ACC has been loaded. To talk with one
  847. particular Cal ACC, type the filename of that ACC, minus the extender, into the
  848. Name field, then click the Rescan button. Cal will ask GEM if that file has
  849. been loaded; if so, the load-from and save-to buttons will be enabled.
  850.  
  851. NOTE: When Cal tries to load from or save to an ACC, it will wait up to five
  852. seconds for the ACC to respond. Normally the process will be very quick, but if
  853. you have Cal set up as a non-resident MultiDesk MDX, it will take MultiDesk a
  854. couple seconds to load Cal.
  855.  
  856. IMPORTANT NOTE: You WILL NOT be able to save your events successfully into a
  857. non-resident copy of Cal! The process may appear to finish without error, but
  858. once the Cal MDX has responded, MultiDesk unloads it from memory- meaning that
  859. none of the new events are saved. There is currently no way to prevent you from
  860. trying this, but future updates to MultiDesk Deluxe will make it possible. Cal
  861. is already set up to take advantage of this feature when it is available.
  862.  
  863. ANOTHER NOTE: The restrictions dealing with MultiDesk ACCs that talk with
  864. other ACCs applies to Cal. See your MultiDesk manual for more information.
  865.  
  866.  
  867. 2.6.6. Mass Erase Dialog
  868.  
  869. This dialog is used to erase all the events in one or more months at one
  870. time. Click the File dialog's Erase button and the dialog will appear; then
  871. select the months you wish to erase and click the Erase button. If you respond
  872. Yes to the alert that appears, all the events that occur in the selected months
  873. will be removed. Cyclic events are not affected.
  874.  
  875. NOTE: This process entails moving around a lot of data, so it may take awhile
  876. to finish, depending on how many events you have and which months are being
  877. erased. The cursor will change to the busy-bee shape while Cal is working. Be
  878. sure to give Cal enough time to complete the process!
  879.  
  880. You also have the option of erasing ALL OF YOUR EVENTS AT ONCE. If you select
  881. the All button, then verify that you really want to do so, Cal will erase every
  882. one of the events you've defined. This process takes only a fraction of a
  883. second. When it completes, you will have a totally empty copy of Cal with no
  884. events defined at all.
  885.  
  886.  
  887. 2.6.7. Setting HotWire Alarms
  888.  
  889. The lower left button on the File Dialog is marked 'set Alarms'. When you
  890. click this button, Cal will check every event scheduled for the current date
  891. and set any HotWire alarms that aren't already set. You'll see an alert that
  892. tells you how many alarms were attempted and how many were set. This button
  893. will be grayed out if HotWire 2.1 or later is not active in your system. (Note:
  894. since Cal is very good about setting alarms when needed, you'll only need to
  895. use this feature after you've defined a new alarm for the current day. In most
  896. other cases, the report will show that no new alarms were set.)
  897.  
  898. NOTE: If you select this option, Cal will set the appropriate HotWire alarms
  899. even if you've turned off alarms in the Preferences dialog.
  900.  
  901.  
  902. 2.6.8. Checking Expired Events
  903.  
  904. The last option in the File Dialog allows you to check all your events and
  905. find those which have expired. For each expired event, you will see the Expired
  906. Event Alert. You may leave an expired event alone for the time being, erase the
  907. event, or convert the event from a one-time date event to a recurring date
  908. event. See the section above on the Expired Event Dialog for more information.
  909.  
  910.  
  911.  
  912. 2.7. Scan Dialog
  913.  
  914. The Scan Dialog lets you view a number of events at once. You can browse
  915. through a summary of all your events, or use the Find dialog to select a subset
  916. of events to view.
  917.  
  918.  
  919. 2.7.1. Concepts
  920.  
  921. Cal keeps an index of all the events you've set up. This index is sorted by
  922. month, date (for a date event) or week and weekday (for a positional event),
  923. alarm time, and importance level. All positional events for a month show up
  924. before the date events for that month (they have a 'date' of zero). Cyclic
  925. events are listed first in the index, before any other types of events.
  926.  
  927. NOTE: Any event that is scheduled for more than one month is listed in the
  928. index as if it occurred in the _first_ scheduled month. For example, if you pay
  929. the rent on the 15th of every month, the event shows up with the January
  930. events. If you pay your car insurance in March and September, the event shows
  931. up in March.
  932.  
  933.  
  934. 2.7.2 How Scanning Works
  935.  
  936. The way Cal's Scan feature works requires some explanation. Cal keeps a 'map'
  937. of all the events listed in the index. This map contains a special flag for
  938. each event. Each flag can be either on or off. When an event's flag is ON, that
  939. event is 'selected' and will show up on the Scan display. When the flag is OFF,
  940. the event will not appear- it will be 'hidden'.
  941.  
  942. When you first enter the Scan dialog, all the flags are turned ON; that means
  943. all your events can be displayed. To find specific events or groups of events,
  944. you can use the Find dialog. This dialog will look at each event whose flag is
  945. ON, and see if it satisfies your request. If it doesn't, the Find routine will
  946. turn that event's flag OFF.
  947.  
  948. The Reset button at the bottom of the Scan display will turn all the event
  949. flags ON, no matter what state they're in at the moment.
  950.  
  951.  
  952. 2.7.3. Scan Display
  953.  
  954. The title bar in the Scan Dialog displays the number of events currently
  955. selected (those with ON flags) and the total number of events in Cal's
  956. database. The dialog can display up to eight events at a time. The entry for
  957. each event takes up two lines. The first line is in small type, and shows you
  958. the event's index number, what importance level you've assigned the event, the
  959. time of the event's alarm, and when the event occurs. The next line contains,
  960. in large type, the first line of the event's message text. Just to the left of
  961. this text is a small 'bullet'.
  962.  
  963. If you want to find out more about an event or make changes to it, click the
  964. message text. This takes you to the Edit Dialog, which shows you all the
  965. information about the event. (The Edit Dialog is explained below.)
  966.  
  967. When you first enter the Scan Dialog, the display is positioned to the first
  968. event in the month you were viewing. Two buttons at the bottom of the dialog,
  969. Prev and Next, allow you to scroll the display forward or back a page at a
  970. time. Several other ways to scroll the display are also available from the
  971. keyboard.
  972.  
  973. The Clr/Home key will move you to the first event. Shift Clr/Home moves to
  974. the last event. The left and right arrow keys scroll the display one event at a
  975. time, and the up and down arrows scroll a page at a time.
  976.  
  977. You can use the top row of keys on the main keyboard (numbers 1-0, -, =) to
  978. start the display at the first event in any month, January to December. If
  979. there are no events indexed in that month, the display will show the first
  980. event in the following month. If no events at all occur past that month, the
  981. first event will be displayed.
  982.  
  983. Note: Remember that cyclic events are indexed before the other types. If you
  984. use the '1' key to move to January, all your cyclic events will have scrolled
  985. off the top of the display... you'll need to scroll back to see them.
  986.  
  987. You may 'hide' an event by clicking on the bullet next to the event's text.
  988. When you do this, Cal turns the event's flag OFF so it doesn't appear.
  989.  
  990.  
  991. 2.7.4. Finding Events
  992.  
  993. The Find button at the bottom of the Scan dialog takes you to the Find Dialog
  994. so you can select a different group of events to display. When you return to
  995. the Scan dialog, only the events that match your selection will be shown. The
  996. next section of this manual explains the Find Dialog.
  997.  
  998.  
  999. 2.7.5. Scan Options
  1000.  
  1001. You have several options available when any events are selected. Click the
  1002. title bar of the Scan dialog, and the Scan Options alert will appear. If you
  1003. wish, you may erase all the events that you've selected, or you can swap the
  1004. 'selected' status of all events (those that were hidden will be selected, those
  1005. that were selected will be hidden). This gives you an easier way to perform
  1006. housekeeping.
  1007.  
  1008.  
  1009.  
  1010. 2.8. Find Dialog
  1011.  
  1012. The Find routine uses the same event-flag method as the Scan dialog. When you
  1013. try to find events that satisfy your requirements, Cal checks each event whose
  1014. flag is ON to see if it matches. If not, the event's flag is turned OFF. If
  1015. there are NO events which satisfy your request, Cal will ding the system bell,
  1016. restore the event map to the way it was before you tried your search, and
  1017. return you to the Find dialog. Otherwise you'll return from the dialog, and the
  1018. event map will have the results of your search.
  1019.  
  1020. The Reset button at the bottom of this dialog acts exactly like the one in
  1021. the Scan dialog - it turns the flags ON for all your events ("resets the map").
  1022. If a search is unsuccessful, you may want to click this button to make sure Cal
  1023. looks through all your events.
  1024.  
  1025. In some cases, you may enter the Find dialog when ALL the event flags are
  1026. turned OFF. When you start a search Cal notices this and gives you the option
  1027. of searching through all your events; if you say it's ok, Cal will reset the
  1028. event map for you before the search starts.
  1029.  
  1030. The Find dialog gives you several ways to specify the events you want to
  1031. find. You can search for events that contain a certain string, or use 'filters'
  1032. to specify certain event types, status, or importance level.
  1033.  
  1034.  
  1035. 2.8.2. Search String
  1036.  
  1037. The top section of the Find dialog lets you specify a string to search for.
  1038. If you enter a string in this field, only events which contain the string will
  1039. be selected. You may use the radio buttons below the string to choose if the
  1040. search should be case-sensitive or not.
  1041.  
  1042. You can search for strings that include non-ASCII characters (those which
  1043. don't appear on the keyboard) if you wish. To enter a non-ASCII character in
  1044. your string, hold down the ALT key and type in up to three decimal digits on
  1045. the numeric keypad. The cursor will turn into a busy bee until you either
  1046. release the ALT key or enter three digits. When you do so, the appropriate
  1047. character will appear in the string.
  1048.  
  1049. Cal can find a string in any part of an event's message text; the string can
  1050. appear on any of the three lines. In fact, Cal can even find the string if it
  1051. is split between two lines! The end of a line of text is counted as a space
  1052. character when searching, so just include a space where the end of a line might
  1053. occur. For example, if your event has "This is a sample of an event" as the
  1054. first line and "split between two lines" as the second, you could find the
  1055. event by using "event split" as your search string.
  1056.  
  1057. If you do not enter a string in this field, Cal will find any event matching
  1058. the filters you enter below.
  1059.  
  1060.  
  1061. 2.8.3. Type, Status, Importance Filters
  1062.  
  1063. The lower section of the Find Dialog lets you set up 'filters' to give you
  1064. more control over the events you find. The first part of this section lets you
  1065. find events of a certain type. If you select the button next to one of the four
  1066. event types, only events of that type will be included in the search.
  1067.  
  1068. If you decide to search for one-time data events, you have the option of
  1069. restricting the search to certain years. You should see two entry fields where
  1070. you may type in a start and/or end year for the search. If you enter a start
  1071. year, only one-time events that occur in that year or after will be found; an
  1072. end year restricts the search to events through the end of that year.
  1073.  
  1074. The next part allows you to restrict your search to only expired events or
  1075. events that have valid HotWire alarm information; again, select the button next
  1076. to the type of event you want to find.
  1077.  
  1078. The bottom part of the dialog lets you specify importance levels you're
  1079. interested in. There are eleven buttons across the dialog, marked 0-9 and one
  1080. button that is blank. If you select any of these buttons, only events whose
  1081. importance matches a selected button will be found. The empty button will
  1082. deselect all the importance buttons, so that events of any importance will be
  1083. allowed.
  1084.  
  1085. Once you've set up the dialog to find a group of events, click the Select
  1086. button or press Enter. Cal will find all the events that match your parameters
  1087. and return you to the previous dialog. If no events match, Cal will ding the
  1088. system bell and you'll return to the Find dialog.
  1089.  
  1090.  
  1091.  
  1092. 2.9. Edit Dialog
  1093.  
  1094. The Edit Dialog allows you to add, change, or erase events stored in Cal's
  1095. database. You can reach this dialog two ways: either click on a message slot in
  1096. the Alert Dialog, or click on a message slot in the Scan dialog. If you enter
  1097. the Edit dialog by clicking on a message, the edit screen will display all the
  1098. information on that event; if you click on a blank slot instead, Cal will show
  1099. you the first event on that day. If no events are scheduled on a day, the Edit
  1100. dialog will show you an empty 'template' ready for you to add a new event.
  1101.  
  1102. This is the most complicated dialog in the Cal system, so it deserves careful
  1103. study. We'll start with a discussion of a few basic concepts.
  1104.  
  1105.  
  1106. 2.9.1. Edit Mode
  1107.  
  1108. Cal supports four different types of events. Each type is scheduled in a
  1109. different manner, so Cal needs to provide a way to enter the data for any event
  1110. type. Cal does so by providing three different 'edit modes' - Date mode (for
  1111. recurring and one-time date events), Position mode, and Cyclic mode. Most of
  1112. the fields on the Edit screen are the same for each mode, but the section
  1113. regarding when an event occurs is different for each.
  1114.  
  1115. The screen for editing Date events contains a number of month buttons, plus
  1116. fields where you can enter a date and year to specify when the event occurs.
  1117. The Position mode screen contains the same month buttons, but instead of fields
  1118. for a date and year, you will see radio buttons where you can select a week and
  1119. weekday for an event. The screen for Cyclic events has fields for you to type
  1120. in the date of the event's first and last occurrence, and the number of days
  1121. between each occurence of the event.
  1122.  
  1123.  
  1124. 2.9.2. Fields on the Edit Screen
  1125.  
  1126. First, take a moment to look at the dialog. Most of the dialog is taken up by
  1127. a large box. The top section of this box shows you the message text for each
  1128. event. Up to three lines of text are allowed here. The first line has a box
  1129. around it to remind you that only the first line of text is displayed in the
  1130. Scan dialog.
  1131.  
  1132. The center of the edit screen shows you all the information needed for
  1133. scheduling the event. This portion of the screen will be different for each
  1134. different mode; in Date mode you'll see the date entry fields, in Position mode
  1135. you see the week and weekday buttons, and in Cyclic mode you see the start/end
  1136. dates and the period.
  1137.  
  1138. The lower part of the large box contains information common to all event
  1139. types: fields for the importance level, the number of days advance notice for
  1140. the event, and for HotWire alarm events, the time of day and slot number for
  1141. the alarm.
  1142.  
  1143. Directly under the large box are two long, skinny buttons. The first button
  1144. lets you switch from one edit mode to another; click this button (or press the
  1145. Alt and 'M' keys) to toggle between date mode, position mode, and cyclic mode.
  1146. The second button lets you jump to the next event on a particular day; click
  1147. the button, or press Alt-N.
  1148.  
  1149. Across the bottom of the Edit dialog you'll see a number of action buttons.
  1150. These buttons allow you to find an event with the Find dialog, erase an event,
  1151. replace an existing event, or add a new event. The last button lets you exit
  1152. the Edit dialog.
  1153.  
  1154.  
  1155. 2.9.3. Looking at Events
  1156.  
  1157. Now let's see how to look at an event. If you clicked on the text of an event
  1158. message to get here, then the Edit dialog will show you all the information on
  1159. that event. If you clicked on a blank message slot, then all the fields here
  1160. will be blank or in their default states.
  1161.  
  1162. For the moment let's assume there's an event showing. The message field at
  1163. the top tells you which event you're looking at. You can see the event's
  1164. importance, days advance notice, and alarm information at the bottom of the
  1165. screen. These fields should be pretty easy to understand.
  1166.  
  1167. The center part tells you exactly when the event is scheduled: if the event
  1168. occurs in a particular month, then that month button will be selected. If an
  1169. event occurs in more than one month, all the appropriate month buttons are
  1170. selected. If this is a cyclic event, the start/end dates are shown.
  1171.  
  1172. When you look at a date event, the date on which the event falls is listed on
  1173. the right. If this happens to be a one-time event, the year in which the event
  1174. occurs is shown on the left.
  1175.  
  1176. IMPORTANT NOTE: THIS IS THE ONLY DIFFERENCE BETWEEN A NORMAL DATE EVENT AND A
  1177. ONE-TIME DATE EVENT. If there's a year in the box, it's a one-time event;
  1178. otherwise it's a normal recurring date event. One-time events expire; recurring
  1179. events don't.
  1180.  
  1181.  
  1182. Now that that's straight, let's see how to look at a _different_ event.
  1183.  
  1184.  
  1185. If more than one event is scheduled on the day (or position in the month)
  1186. you're looking at, simply click the skinny Next Event button (or press Alt-N).
  1187. Every time you click this button, Cal shows you the next event on this
  1188. schedule. Click the button as often as you wish to cycle through all the events
  1189. on that day. After the last event on this schedule is displayed, you'll see an
  1190. empty template; click the button again to start back at the first event.
  1191.  
  1192. If only a single event, or no events at all, are scheduled on that day, then
  1193. you need to change days. To do so, just change any of the month or position
  1194. buttons, or type in a different date, then click the Next Event button.
  1195. Whenever you click this button, Cal looks to see what schedule you've selected,
  1196. then goes through his database looking for events on that schedule. If any are
  1197. found, Cal will display them one at a time.
  1198.  
  1199. IMPORTANT NOTE: If you wish, you can select more than one month button for
  1200. your search. When you do this, you'll be able to scan through all the events
  1201. matching your schedule that occur in any of the months you select. For each
  1202. event, Cal will use the month buttons to show you when the event is scheduled,
  1203. but will still remember which month buttons YOU selected. If _YOU_ change the
  1204. month buttons, then Cal will use your choices for looking at events. If _CAL_
  1205. changes the month buttons to show when an event occurs, that WON'T change the
  1206. months you selected. Cal will continue to use your month selections until you
  1207. change the edit mode, or select different month buttons on the dialog. (Note:
  1208. Cal won't store your selections until you actually change the month buttons
  1209. yourself.)
  1210.  
  1211.  
  1212. Let's say you're looking at date events, but you want to switch over and look
  1213. at a positional event. It's easy to do - just click the skinny button marked
  1214. 'To Position Mode' near the bottom left. Cal will shift to Position Mode; then
  1215. you select the buttons for whatever schedule you want. When you've done that,
  1216. click the skinny Next Event button. That makes Cal look for events on your
  1217. selected schedule.
  1218.  
  1219. When you get into position mode, look at the skinny mode button you just
  1220. clicked: it now reads 'To Cyclic Mode'. Also, the skinny Next Event button
  1221. reads 'Next Pos Event'. Whenever you click the Mode button, Cal toggles between
  1222. Date mode, Position mode, and Cyclic mode. The skinny buttons change their
  1223. markings to show you what effect they'll have.
  1224.  
  1225. NOTE: Whenever you change edit modes, Cal looks through the event map and
  1226. turns OFF the flags for any events that aren't of the new type. This won't
  1227. cause a problem, but it may confuse you if you're not expecting it!
  1228.  
  1229.  
  1230. If you want to find a particular event, you can use the Find dialog to help;
  1231. just click the Find button at the bottom of the screen. Use the dialog, and
  1232. when you exit, the next event you found will be displayed.
  1233.  
  1234. NOTE: 'Next event' means the first marked event whose position in the index
  1235. follows the event that was on the screen when you called Find. On occasion
  1236. there WON'T BE ANY MARKED EVENTS that are indexed AFTER the previous event.
  1237. When this happens, you'll see an empty template on the screen. To view your
  1238. events, just click the Next Event button and you'll see the first marked
  1239. event.
  1240.  
  1241.  
  1242. 2.9.4. The When Dialog
  1243.  
  1244. Any time the Edit dialog is showing a valid cyclic event, the small "Show
  1245. When" button in the middle of the screen will be enabled. If you click this
  1246. button, you will see the When Dialog for that event. This dialog lists the date
  1247. of every occurrence of the event. Use the 'Past' and 'Future' buttons to scroll
  1248. forward and back through the list. If you wish, you can click on one of the
  1249. dates- when you do so, you return to the main calendar screen, showing the
  1250. calendar for the date.
  1251.  
  1252.  
  1253. 2.9.5. Changing Existing Events
  1254.  
  1255. Now that you've seen how to _look_ at an event, you can learn how to _change_
  1256. an event. You'll be pleased to know that it's simple... just find the event,
  1257. then change its message, schedule, importance, days notice, or whatever. When
  1258. you've finished the changes, click the Replace button at the bottom of the
  1259. screen. When you do this, Cal erases the old event you were looking at, then
  1260. adds whatever you typed in as a new event. Any settings you didn't change are
  1261. left as they were.
  1262.  
  1263. Cal has several features to make editing events simpler. When you're editing
  1264. a text field, you can use the shifted left and right arrow keys to move to the
  1265. beginning or end of the field you're editing. The Clr/home key will move the
  1266. cursor right to the first line of the message; shifted, to the HotWire alarm
  1267. slot. (The up and down arrow keys also 'wrap around' these two fields.) You can
  1268. even enter non-ASCII characters in a field by holding down the Alt key and
  1269. typing in three decimal digits on the numeric keypad.
  1270.  
  1271.  
  1272. 2.9.6. Adding New Events
  1273.  
  1274. Adding a new event is as simple as changing an existing one- in fact, the
  1275. process is exactly the same. The only difference is that to add a completely
  1276. new event, you should click Add instead of Replace.
  1277.  
  1278. When an empty 'template' appears on the screen, just enter the information
  1279. you need to define a new event. Or go ahead and type over an event that's
  1280. already displayed on the screen- when you click Add, the old event isn't
  1281. changed at all; a brand new event is added to the database. However, if the
  1282. event you type in exactly matches an event already in the database, you'll be
  1283. told that the event exists and the duplicate will not be added.
  1284.  
  1285. NOTE: When adding a Cyclic event, you're asked to enter dates using numbers
  1286. for the year, month, and day. By default, Cal is set up to use USA style dates
  1287. - this means you need to enter the month, then the day, then the year. However,
  1288. if you have selected the 'Euro Dates' option in Preferences, Cal will expect
  1289. you to enter the day first, then the month and year. Remember to enter the
  1290. month and day in the correct order!
  1291.  
  1292. ANOTHER NOTE: There's one editing shortcut that may come in handy. If you are
  1293. editing a date event, you can type a year into the Year field to create a
  1294. one-time date event.  Since you'll usually want to insert the current year, you
  1295. can simply click the word "Year:" on the Date edit screen (or press Alt-Y);
  1296. doing so will insert the current year in this field, and move the cursor to the
  1297. field as well.
  1298.  
  1299.  
  1300. 2.9.7. Erasing Events
  1301.  
  1302. An event can be erased by clicking the button marked Erase on the bottom of
  1303. the screen. Simple enough, eh?
  1304.  
  1305. WARNING: BEFORE you click the Erase button, be SURE you're pointing to the
  1306. right event! Cal remembers the last event displayed on the screen. If you
  1307. change the month buttons or other scheduling fields, be sure to click the Next
  1308. Event button _before_ you click Erase - this will guarantee that Cal is
  1309. pointing to the right event. If you're not careful, you'll erase something you
  1310. don't want to lose!
  1311.  
  1312.  
  1313. ====================================================
  1314.  
  1315.  
  1316. 3. Calshow
  1317.  
  1318. Calshow was designed primarily as an AUTO program to remind you of upcoming
  1319. events whenever you boot your Atari. You can also run Calshow as a normal GEM
  1320. program or desk accessory to see a list of upcoming events at any time, or to
  1321. write several types of reports to a printer or disk file. This version of
  1322. Calshow has been completely rewritten to be more efficient, and all its
  1323. functions are now available from a single dialog.
  1324.  
  1325. Basically, Calshow finds your copy of Cal, reads its event database, and
  1326. displays on screen any events that will occur within a short period of time.
  1327. The display can include the number of days until the event, the date on which
  1328. the event falls, the alarm time, and the message you entered for the event.
  1329.  
  1330.  
  1331.  
  1332. 3.1. Running from the AUTO Folder
  1333.  
  1334. The easiest way to run Calshow is directly from your AUTO folder. When you do
  1335. so, it provides you with a list of upcoming events whenever you boot your
  1336. Atari.
  1337.  
  1338. When you run Calshow, the first thing it does is look for your copy of Cal.
  1339. There's a way to tell Calshow exactly where you keep Cal- that's explained in
  1340. the section below on running as a program. But even if you haven't told Calshow
  1341. where to find Cal, chances are Calshow can find it!
  1342.  
  1343. Calshow first looks for Cal wherever you told it to look. If it can't find
  1344. the file, or if the file turns out not to be Cal, Calshow looks at all the
  1345. other files in that folder whose names match the pattern "CAL*.AC?". If none of
  1346. those are Cal, Calshow checks all "CAL*.PR?" files.
  1347.  
  1348. If none of the files checked turn out to be Cal, Calshow takes more drastic
  1349. measures. It checks _seven more folders_ looking for any file with the name you
  1350. specified, or whose name matches one of the patterns above. First, Calshow
  1351. looks in the folder from which it was run. Then it looks in the root directory
  1352. of the same disk. If that doesn't work, Calshow keeps on looking in these
  1353. folders: \ACCS\, \MULTDESK.MDX\, \MULT_MDX\, \DESK\, \DESKACCS\, and \ACC\. If
  1354. Calshow still can't find Cal, it gives up (and shame on you for hiding it! :-).
  1355.  
  1356. NOTE: If one of the files Calshow examines _is_ Cal but doesn't have any
  1357. events in its database, Calshow ignores it and continues looking.
  1358.  
  1359.  
  1360. After Calshow finds Cal, it reads in the event database and displays a list
  1361. of upcoming events. Calshow displays an entry for every event whose advance
  1362. notice period is close enough to today's date. (Normally Calshow will display
  1363. up to one screen's worth of upcoming events, but you can change this setting;
  1364. see the section below on running Calshow as a program.) The entry includes the
  1365. number of days before the event, the date on which the event falls, and the
  1366. message you defined for the event.
  1367.  
  1368. NOTE: Calshow determines the screen size by asking the operating system for
  1369. the current resolution. Unfortunately, the value returned doesn't always
  1370. reflect the correct screen size. If you have a large-screen monitor, you may
  1371. want to adjust the Prefs setting for the maximum number of events to display.
  1372.  
  1373. As distributed, Calshow will display any event, no matter what its importance
  1374. level. This setting can be changed as well; again, see below for more
  1375. information.
  1376.  
  1377.  
  1378. Once Calshow has displayed the list of upcoming events, it pauses for a
  1379. moment so you can read the list. The normal wait period is 15 seconds (but this
  1380. setting too can be changed to suit you). After this amount of time has passed,
  1381. Calshow finishes running and your bootup process continues. You can press any
  1382. key to make Calshow quit before time has expired, or press the HELP key to make
  1383. Calshow wait for a keypress before continuing.
  1384.  
  1385. NOTE: If Calshow can't find a valid copy of Cal, or there are no events
  1386. happening soon enough to display, Calshow will display a message on the screen
  1387. and pause for _one second only_. This means your bootup won't be delayed
  1388. unless there's a good reason.
  1389.  
  1390. Versions 6.1 and later have a feature that lets you tell Calshow to display
  1391. events only on the first boot of each day (see Preferences below). If you
  1392. reboot your ST and wish to see the display anyway, hold down the Alternate key
  1393. as Calshow loads. If you want to skip Calshow's display for some reason, hold
  1394. down the Control key instead.
  1395.  
  1396.  
  1397. IMPORTANT NOTE: Calshow uses your GEMDOS clock to determine the current
  1398. date. If you have an external clock chip but you can't get Calshow to display
  1399. the correct date when you run it from the AUTO folder, it may be that your
  1400. clock program is only setting the keyboard clock. You can correct this by
  1401. running a program such as CLOCKSET.PRG (freeware from Little Green Footballs
  1402. and Charles F. Johnson) before Calshow runs. This program reads the keyboard
  1403. clock and sets the GEMDOS clock, so the date will be correct.
  1404.  
  1405.  
  1406.  
  1407. 3.2. Running as a PRG or ACC
  1408.  
  1409. Calshow provides you with MUCH more control over its output when you run it
  1410. as a program or desk accessory. In addition, you can configure a number of
  1411. settings, such as those mentioned above, to tailor Calshow's behaviour. You can
  1412. save these settings in the Calshow file so they will be active the next time
  1413. you run Calshow at boot time.
  1414.  
  1415.  
  1416. 3.2.1. Calshow Prefs
  1417.  
  1418. The top section of the Calshow dialog allows you to set up your options.
  1419. First you see a box labelled "Show __ Events": this box lets you set the
  1420. MAXIMUM number of events Calshow will display. You can type in a specific
  1421. number of lines, or leave the value as zero. If you say zero, Calshow will try
  1422. to determine the size of your Atari's screen and display only the number of
  1423. events that will fit.
  1424.  
  1425. IMPORTANT NOTE: Calshow may not display this number of events every time...
  1426. it depends on the days notice you defined for each event! Remember, this is the
  1427. MAXIMUM!
  1428.  
  1429. Next is a field that says "Pause ___ Seconds". This field controls the length
  1430. of the pause after Calshow has displayed its event list. Type in any number
  1431. from zero to 999 seconds here.
  1432.  
  1433. IMPORTANT NOTE: IF YOU SET THIS FIELD TO ZERO, CALSHOW WILL WAIT FOREVER FOR
  1434. YOU TO PRESS A KEY! Keep this in mind when you're deciding on a value to enter
  1435. here.
  1436.  
  1437. Beneath these two fields are a pair of buttons marked Once and Euro. If you
  1438. select the Once button, then Calshow will only display upcoming events on the
  1439. first bootup of each day; if you reboot later in the day, you must hold down
  1440. the Alternate key when Calshow loads if you wish to view the display.
  1441.  
  1442. NOTE: Calshow uses the date stamp on the Calshow program file to determine
  1443. if each bootup is the first for the day. You must not write-protect Calshow if
  1444. you want to take advantage of this feature.
  1445.  
  1446. The Euro button tells Calshow to expect European-style dates (day, month,
  1447. year) instead of USA-style dates (month, day, year) for the start and end
  1448. dates entered below.
  1449.  
  1450. The next button is marked "Locate Cal". This is the way to tell Calshow
  1451. exactly where your copy of Cal is located. Click on the button and use the item
  1452. selector to find your Cal program file.
  1453.  
  1454. IMPORTANT NOTE: Cal doesn't actually have to be in the folder you locate!
  1455. Calshow will store the path and filename you select, even if the file isn't Cal
  1456. or doesn't even exist. This means you can configure Calshow first, then move a
  1457. copy of Cal into the right place later. You'll see an alert that warns you of
  1458. any error, but the information will be stored in memory anyway.
  1459.  
  1460. The next button in this part of the dialog is marked Save Setup. Click this
  1461. button, then use the item selector to locate Calshow; all the settings in the
  1462. top section of the dialog will be saved in the program file, and will be in
  1463. effect the next time you run Calshow.
  1464.  
  1465. Beneath these two buttons is a group of ten buttons marked 0-9. These buttons
  1466. tell Calshow which importance levels to show. If the button corresponding to an
  1467. event's importance level is NOT selected, that event WON'T be shown in
  1468. Calshow's display. Once you've selected the levels you wish to view, you may
  1469. click the small "Importance Filters" title to toggle your selections on and
  1470. off. You may also double-click the title to select all levels at once.
  1471.  
  1472.  
  1473. 3.2.2. This Run Only
  1474.  
  1475. The lower section of the Calshow dialog lets you decide what sort of display
  1476. you want. You'll see two groups of radio buttons, and a space to enter two
  1477. dates. None of the information on this half of the dialog is saved; it only
  1478. pertains to this particular run.
  1479.  
  1480. The first group of buttons allows you to choose one of three styles of
  1481. output. Select the button for the type of output you desire. The first type,
  1482. Coming Events, produces a report on events that will occur in the near future.
  1483. Each line of this report will contain the number of days before the event (in
  1484. bold print), the date and time of the event, and the message (underlined). If
  1485. the event has more than one line of text, each line will be displayed.
  1486.  
  1487. The second type, Datebook, will produce a datebook-like list with one entry
  1488. for every day in the time period you specify. The starting month and year are
  1489. listed on one line. Under this, another line lists the date and day of the
  1490. week. Then, if there are any events scheduled for that day, the event messages
  1491. are listed on a separate line, preceded by the event's alarm time. This type of
  1492. list is most useful when you specify a time period of a week or month; you may
  1493. want to use the Datebook output as a to-do list.
  1494.  
  1495. The last option allows you to produce a Master List of all the events you've
  1496. stored in Cal's database. If you choose this type of output, any starting or
  1497. ending date you've entered is ignored; every event in Cal is listed, one event
  1498. per line (with extra lines if the event uses more than one line for its
  1499. message). Each entry contains the event number, letters to indicate the months
  1500. in which the event occurs, the date or position on which the event falls, the
  1501. alarm time and number of days advance notice you've set, the event's
  1502. importance, and the event message. For a cyclic event, the entry shows the
  1503. number of days between occurrences and the date of the first occurrence. You
  1504. have the option of listing all events or only those matching the importance
  1505. levels you've selected.
  1506.  
  1507. The second group of radio buttons lets you choose where to send Calshow's
  1508. output. The three buttons are marked Video, Printer, and File. Simply select
  1509. the button corresponding to the type of output you want - on screen, printed
  1510. hardcopy, or a disk file.
  1511.  
  1512. NOTE: The video display on screen only supports the Coming Events listing.
  1513. That shouldn't be a problem, since the other report styles are of limited
  1514. usefulness on screen. When you direct output to a printer or disk file, you may
  1515. choose any of the three reports.
  1516.  
  1517.  
  1518. Underneath these setup items are boxes where you can enter a specific start
  1519. or end date for Calshow's display. These dates are only valid when running
  1520. Calshow as a program or accessory; at boot time, Calshow will always show you
  1521. a display of upcoming events according to the date set in your ST's clock.
  1522.  
  1523. NOTE: If your ST doesn't have a built-in clock, then you probably have an
  1524. AUTO program to set the time from a separate clock chip, your hard disk, or
  1525. some other method. Be sure this program runs BEFORE Calshow when you boot, or
  1526. the events you see won't be the ones you want to see!
  1527.  
  1528. When you enter a new starting date, Calshow pretends that that date is the
  1529. current date. You don't need to enter a complete date here; if you just want to
  1530. see a list of events for the first part of May, simply enter the number "5" in
  1531. the month field. When you enter a year, any two-digit number is assumed to be
  1532. in the 1900s and any one-digit number is treated as if it's in the 2000s. Thus,
  1533. a year of "93" would be 1993 and a year of "1" would mean 2001.
  1534.  
  1535. You can enter a new ending date in the same fashion. Of course, Calshow will
  1536. warn you if you try ending the display before it starts.
  1537.  
  1538. IMPORTANT NOTE: If you enter an ending date, CALSHOW WILL IGNORE THE DAYS
  1539. ADVANCE NOTICE SPECIFIED FOR EACH EVENT. When you tell Calshow the end date you
  1540. want, it assumes that you want a complete list of events up to that date
  1541. regardless of the advance notice. Calshow will keep showing events until this
  1542. end date is reached OR the maximum number of events has been shown. (Remember,
  1543. you set up the maximum in the "at most" field above.)
  1544.  
  1545.  
  1546.  
  1547. Four buttons appear at the bottom of Calshow's dialog. The one on the left,
  1548. Exit, allows you to exit Calshow. The one on the right is marked "Go!". When
  1549. you click this button or hit Return, Calshow will format the report you
  1550. selected. If you asked for output to a printer or disk file, Calshow closes its
  1551. window while the list is being prepared. When the operation has completed,
  1552. you'll return to the desktop.
  1553.  
  1554.  
  1555. Calshow 6.2 adds two new 'quick-view' buttons, "Week" and "Today". These
  1556. buttons let you instantly select a video display of coming events for the day
  1557. or for the next week. Unlike the standard Calshow display, the advance notice
  1558. for your events is ignored so you get a full picture of upcoming events. The
  1559. importance filters you've selected are still taken into account, though.
  1560.  
  1561.  
  1562. When you've chosen Video output, you'll see a GEM window appear. The
  1563. information line under the title bar tells you the starting date for Calshow's
  1564. list of events. The rest of the window displays upcoming events according to
  1565. the options you specified above. First the number of days before the event is
  1566. shown in bold letters, then the day of the week and the date appear in italics.
  1567. The alarm time for an event will appear in normal type, or a dashed line if the
  1568. event has no alarm. The rest of the line is underlined, and contains the
  1569. message for the event.
  1570.  
  1571. At the bottom of the screen, you'll see one of two messages. If the entire
  1572. list of events fits on a single screen, Calshow will display the message "press
  1573. any key to continue". You can press a key to exit Calshow, or simply wait for
  1574. the pause time you entered above to expire. When this happens, you'll return to
  1575. the desktop.
  1576.  
  1577. If there are more events to display than will fit on a single screen, Calshow
  1578. displays the message "press a key to go on or UNDO to quit". If you press the
  1579. UNDO key, Calshow will exit to the desktop. If you press any other key, or wait
  1580. for the pause time to run out, Calshow will clear the screen and display a
  1581. second group of events. This process continues until all events waiting to be
  1582. shown have been displayed.
  1583.  
  1584. You can press the HELP key at any time. When you do so, Calshow will wait for
  1585. you to press any key (including Help) before it continues.
  1586.  
  1587.  
  1588. Once Calshow has completed a display, you return to the Calshow dialog. You
  1589. can choose to see another Calshow display, or you can exit the program by
  1590. clicking the eXit button or pressing UNDO.
  1591.  
  1592.  
  1593. ====================================================
  1594.  
  1595.  
  1596. 4. Final Notes, Version History
  1597.  
  1598.  
  1599. Cal and Calshow were written completely in assembly language using the HiSoft
  1600. DevpacST assembler. The resources were created with WERCS and converted to
  1601. assembly code using a program written by Carl Barron. Thanks to Robert
  1602. Birmingham for convincing me to add events to my simple calendar program, and
  1603. to Myles Cohen, Colin Robertson, and many others for some great suggestions!
  1604. Many thanks also to the CodeHeads for telling me how to hook into HotWire and
  1605. to the Double Click folks for help getting these programs working with
  1606. DC-Squish. Special thanks are due Charles F. Johnson for hints on letting a
  1607. program figure out if it's an ACC or AUTO program.
  1608.  
  1609. And, of course, many thanks and best wishes to the folks who've sent cards
  1610. and letters (and donations) -- people like you keep shareware authors writing!
  1611.  
  1612. The calendar routine I use in Cal was based on Zeller's Congruence, which
  1613. explains a simple way to calculate the day of the week for a given date without
  1614. resorting to a lookup table. Articles dealing with this subject appeared in
  1615. Computer Language Magazine, March and December 1988. (The articles were
  1616. helpful, although they included a couple of typographical errors. :-) Also note
  1617. that the modern Gregorian calendar wasn't invented until the 1580s, something
  1618. to keep in mind if you're poking around in the dim and distant past <grin>.
  1619.  
  1620. Please let me know if you use this program!!! Comments, suggestions,
  1621. requests, and bug reports are all welcome. Remember: if you find a bug but you
  1622. don't let me know about it, chances are I won't fix it. :-)
  1623.  
  1624. This program is distributed as shareware - try Cal out for awhile, and if you
  1625. decide to keep it, send a donation to me at the address below. For every
  1626. donation of $25 or more, I'll send a disk containing the latest versions of all
  1627. my programs (Cal, the Whatis File Identifier, KXPset Printer Setup Utility).
  1628. But even if you don't want to contribute right now, please send a postcard!
  1629.  
  1630.  
  1631.       Bill Aycock
  1632.       2310 North Elm Street
  1633.       Greensboro, NC 27408-5120
  1634.  
  1635.       Compuserve ID: 76703,4061
  1636.       Internet: 76703.4061@compuserve.com
  1637.       March 31, 1992
  1638.  
  1639. PS- The latest version of Cal is always available in Compuserve's Atari
  1640.     Productivity Forum (GO ATARIPRO at any ! prompt). Since I'm on the
  1641.     Forum's staff, I always upload there first. For fastest response to
  1642.     inquiries, post a message to me in ATARIPRO.
  1643.  
  1644. PPS- If you somehow lose my address, just press the Help key from Cal's main
  1645.      screen. :-)
  1646.  
  1647. ================
  1648. Version History:
  1649. ================
  1650.  
  1651. v6.2b talks to MultiDesk Deluxe to find when running as non-resident MDX
  1652. v6.2a corrects behaviour of background window when a resident ACC
  1653. v6.2: Cal: more displays of alarm time; more Scan options; When dialog to show
  1654.       cyclic event dates; more date calculations; ability to move dialog on
  1655.       screen; Calshow: alarm time displayed, events sorted by alarm time; new
  1656.       Week and Today buttons; return to menu instead of exit
  1657. v6.11 both: corrected keyboard shortcuts and mouse handling in ACC mode
  1658. v6.1: Cal: adds ability to communicate with other Cal ACCs; Calshow: allows
  1659.       European date format, once-per-day bootup display
  1660. v6.02 Cal: fixed 'invisible' level-0 events, edit logic change; Calshow: fixed
  1661.       max display lines, problem when cancelling a locate-Cal process
  1662. v6.01 allowed shifted command keys; in Cal: corrected Cancel key in Mass
  1663.       Erase, added default importance level, honors alarms-disable button,
  1664.       extended cyclic period to up to 255 days; fixed Calshow to save
  1665.       importance filter, allowed Master List to pay attention to importance
  1666.       filters
  1667. v6.0: complete rewrite: added cyclic events, file load/save, importance
  1668.       levels, keyboard shortcuts, many many more changes!
  1669. v5.3: fixed Cal & Calshow to work if system date is not valid
  1670. v5.2: added extended data area; fixed Calshow to recognize any 5.x version
  1671. v5.1: Cal: added alert when no room remains to add an event
  1672. v5.0: Cal: added compatibility with DC-Squish; three importance levels; one
  1673.       event can occur in multiple months; specify advance notice separately
  1674.       for each event; Hotwire alarm feature; bug fixes, optimizations, etc.
  1675.       Calshow: completely rewritten to run as a GEM program or ACC or from
  1676.       AUTO folder; DC-Squish compatible; new Datebook and Dump output
  1677.       options; importance filter for event displays; lots more stuff
  1678. v4.7: added support for significant/non-significant events
  1679. v4.5: added multiple positional events; when saving setup, file selector now
  1680.       defaults to path Cal loaded from; allow more events on single day; added
  1681.       code to help guard against unusual March start date problem
  1682. v4.4: added option to supress add/replace/erase event alerts; added case
  1683.       sensitive search; retains search string between searches
  1684. v4.3: fixed a logic bug occurring when exiting Cal in some circumstances;
  1685.       added keyboard exit from Browse screen
  1686. v4.2: added Replace button in Edit; added option to ignore expired events;
  1687.       added type filters to Find function; changed Browse logic
  1688. v4.1: added grow/shrink box support; added leap-year check for one-time
  1689.       events on Feb 29; skip saving duplicate events; sundry other tweaks
  1690. v4.0: added multiple events on the same date; added alphabetic sort; added
  1691.       one-time events and expired-event handling; various other tweaks
  1692. v3.5: fixed filepath setup for standard GEM file selector problem
  1693. v3.4: fixed logic error in Calshow; enabled 'last' week position button
  1694. v3.3: fixed obscure bug in Find function; redesigned Browse screen and Today
  1695.       button logic; added Prev and Next month buttons; added option to save
  1696.       changed setup when exiting
  1697. v3.2: fixed occasional bus errors after erasing events and then browsing;
  1698.       included Calshow for bootup reminders
  1699. v3.1: first released version supporting events
  1700. v2.0: final calendar-only version
  1701.  
  1702. ====================================================
  1703.  
  1704. 5. Keyboard Shortcuts
  1705.  
  1706. 5.1. Main Calendar
  1707.  
  1708.       UNDO                 Exit
  1709.       HELP, Space bar      credits, statistics
  1710.       numbers 1-0, -, =    month buttons
  1711.       keypad 1-9, (, ), /  month buttons
  1712.       Clr/Home             January
  1713.       shift Clr/Home       December
  1714.       R arrow              next month
  1715.       L arrow              previous month
  1716.       Up arrow             forward one year
  1717.       shift Up arrow       forward ten years
  1718.       Down arrow           back one year
  1719.       shift Down arrow     back ten years
  1720.       Y                    Year dialog
  1721.       F1, /, ?             extras dialog
  1722.       F2, T                Today
  1723.       F3, P                Preferences dialog
  1724.       F4, F                File dialog
  1725.       F5, S                Scan dialog
  1726.  
  1727.  
  1728. 5.2. Alert Dialog
  1729.  
  1730.       UNDO                 Exit
  1731.       numbers 1-8          select event 1-8
  1732.       keypad 1-8           select event 1-8
  1733.       F1, N, space bar     Next page
  1734.  
  1735.  
  1736. 5.3. Edit Dialog
  1737.  
  1738.       UNDO                 Exit
  1739.       Alt-M                toggle Mode
  1740.       Alt-N                Next event
  1741.       Alt-W                When dialog (cyclic events)
  1742.       Alt-Y                this Year (date events)
  1743.       F1, Alt-F            Find dialog
  1744.       F2, Alt-E            Erase event
  1745.       F3, Alt-R            Replace event
  1746.       F4, Alt-A            Add event
  1747.  
  1748.  
  1749. 5.4. Expired Event Dialog
  1750.  
  1751.       UNDO                 Exit
  1752.       F1, C                Convert event
  1753.       F2, E                Erase event
  1754.       F3, I, space bar     Ignore event
  1755.  
  1756.  
  1757. 5.5. Extras Dialog
  1758.  
  1759.       UNDO                 Exit
  1760.       F1, C                Calculate
  1761.       D, ^ R arrow         Day/month/year order
  1762.       M, ^ L arrow         Month/day/year order
  1763.  
  1764.  
  1765. 5.6. File Dialog
  1766.  
  1767.       UNDO                 Exit
  1768.       F1, Alt-L            Load from file
  1769.       F2, Alt-S            Save to file
  1770.       F3, ^ R              Rescan for acc
  1771.       F4, ^ L              Load from acc
  1772.       F5, ^ S              Save to acc
  1773.       F6, Alt-M            Merge from file
  1774.       F7, Alt-E            mass Erase dialog
  1775.       F8, Alt-A            set Alarms
  1776.       F9, Alt-X            check eXpired events
  1777.  
  1778.  
  1779. 5.7. Find Dialog
  1780.  
  1781.       UNDO                 Exit
  1782.       ^ L arrow            case sensitive
  1783.       ^ R arrow            not case sensitive
  1784.       Alt-A                Alarm events
  1785.       Alt-C                Cyclic events
  1786.       Alt-D                Date events
  1787.       Alt-E                Expired events
  1788.       Alt-O                One-time events
  1789.       Alt-P                Positional events
  1790.       ^ space bar          clear importance flags
  1791.       F1                   reset event flags
  1792.       F2                   select events
  1793.  
  1794.  
  1795. 5.8. Mass Erase Dialog
  1796.  
  1797.       UNDO                 Exit
  1798.       numbers 1-0, -, =    month buttons
  1799.       keypad 1-9, (, ), /  month buttons
  1800.       A                    erase All events
  1801.       F1, E                Erase events
  1802.  
  1803.  
  1804. 5.9. Preferences Dialog
  1805.  
  1806.       UNDO                 Exit
  1807.       F1                   accept changes
  1808.  
  1809.  
  1810. 5.10. Scan Dialog
  1811.  
  1812.       UNDO                 Exit
  1813.       HELP                 scan options alert
  1814.       numbers 1-0, -, =    first event in that month
  1815.       keypad 1-8           select event 1-8
  1816.       ^ 1-8                hide event 1-8
  1817.       Clr/Home             first event
  1818.       shift Clr/Home       last event
  1819.       L arrow              back one event
  1820.       R arrow              forward one event
  1821.       Up arrow             back one page
  1822.       Down arrow           forward one page
  1823.       F1, R                Reset event flags
  1824.       F2, F                Find dialog
  1825.       F3, P                Previous page
  1826.       F4, N                Next page
  1827.  
  1828.  
  1829. 5.11. When Dialog
  1830.  
  1831.       UNDO                          Exit
  1832.       P, L arrow, U arrow, F1       Past
  1833.       F, R arrow, D arrow, F2       Future
  1834.       1-0                           go to date 1-10
  1835.  
  1836.  
  1837. 5.12. Calshow Dialog
  1838.  
  1839.       UNDO                 Exit
  1840.       HELP                 wait for keypress
  1841.       C                    Coming events report
  1842.       D                    Datebook report
  1843.       E                    European date format
  1844.       F                    File output
  1845.       G                    Go!
  1846.       I                    toggle Importance filters
  1847.       L                    Locate Cal
  1848.       M                    Master list report
  1849.       O                    Once per day boot display
  1850.       P                    Printed output
  1851.       S                    Save setup
  1852.       T                    Today quick-view
  1853.       V                    Video (screen) output
  1854.       W                    Week quick-view
  1855.