2.3.2. Viewing Previous, Next, and Specific Calendar Dates

Immediately below the `Year' on the `View' menu are the three commands `Next', `Previous', and `Goto Date'. These commands provide a quick means to go to another calendar date than is in the current display.

2.3.2.1. Next and Previous

The effect of `View Next' and `View Previous' is based on the level of the current display. At the day, week, month, and year levels, the `View Next' command changes the display to the next calendar unit at that level. At the item level, `View Next' changes the display to the chronologically next scheduled item, if any. The `View Previous' command operates analogously in the backward-time direction. An example of the effect of `View Next' at the day level is illustrated in Section 2.3.1.1 in the transition from Figure 13 to Figure 14.

The right and left arrow buttons at the top of the view-level displays are shortcuts for the `View Next' and `View Previous' commands, respectively. These arrows appear to the far left of the date headers, as shown in Figures 13 , 18 , 21 , 23 , and 25 . Pressing one of these arrows has precisely the same effect as the corresponding menu command. Using the shortcut arrow keys is most effective when multi-window mode is off. With multi-window mode off, the user can leave the mouse in a fixed position on the screen while repeatedly pressing a next or previous arrow. This permits the user to move more rapidly in the next and previous directions. Further details of the multi-window display option are covered in Section 2.3.6

At the item-level of display ( Figure 25 ), moving in the next and previous directions is fundamentally different than at the day through year levels. Specifically, movement at the item level is non-uniform through time. At the day through year level, Next and Previous move exactly one unit of time at the given level. At the item level, Next and Previous move a variable amount of time, based on when the next or previous scheduled item appears in the calendar.

By default, `Next' and `Previous' at the item level move through the complete list of all scheduled items of all four item types, i.e., appointments, meetings, tasks, and events. The day-to-day order of the item list is conveniently visualized in a list- style week view, as shown in Figure 20. Within a given day, the order of scheduled items is as follows:

  1. all events come first, sorted alphabetically by title;

  2. tasks follow the events, sorted first due time, second by priority, and third by title;

  3. the combined list of appointments and meetings come next, sorted first by start time, second by duration, and third by title.
Within a particular day, `Next' and `Previous' move through the items in this order. When a `Next' command is executed at the last item of a day, the display is changed to the first item of the next day that has an item, if any. Similarly, when a `Previous' command is executed at the first item of a particular day, the display is changed to the last item of the previous day that has an item, if any.

The default item-level behavior of `Next' and `Previous' can be altered with the `View Filter' command, described in Section 2.3.4. By setting various filtering options, the user can change which items appear in the next/previous traversal, as well as the beginning and ending time ranges of the traversal.

If the current display window is not a calendar view or if there is no current window, the `Next' and `Previous' commands are disabled in the `View' menu. A calendar view is a display created by one of the five view-level commands, i.e., `Item', `Day', `Week', `Month', or `Year'.

2.3.2.2. Today

There are two ways to execute the command that displays information for today's date. The `Today' menu command is immediately below the `Prevous' command in the `View' menu. There is also the small `Today' command button between the left and right arrow buttons at the top left of all view-level displays. Both of these commands have exactly the same effect.

When the user selects a `Today' command, the system changes the current or most recent calendar display to show the information for today's date. If there is no calendar display, the system displays a new window at the default start-up level. The exact behavior of the `Today' command is the same as when the user enters today's date for the `Goto Date' command, as described in the immediately following section of the requirements.

2.3.2.3. Goto Date

When the user selects the `Goto Date' command from the `View' menu, the system displays the dialog shown in Figure 26.


Figure 26: Goto date dialog.



The user enters the desired date and presses the `OK' button to proceed. For example, Figure 27 shows the user having entered the date 31 October 1998.


Figure 27: Goto date 31 Oct 98.



In response to `OK', the system removes the dialog from the screen and updates the current display based on the entered date. The exact manner of display update is based on the level of the current display and the setting of the windowing mode.

When per-level mode is on, the system responds to `Goto Date' by changing the current display, or by creating a new display window if there is no applicable current display. Specifically:

  1. If the current display is at the month or year level, the system changes the display to the month or year that contains the selected date, and highlights the date number. For example, if the current display is at the month level when the user presses `OK' in Figure 27, the system updates the display as shown in Figure 28.


    Figure 28: Goto date 31 Oct 98 at the Month Level.



  2. If the current display is at the week level, the system changes the display to the week containing the selected date and highlights the day name of that date. For example, if the current display is a list-style week view when the user presses `OK' in Figure 27, the system updates the display as shown in Figure 29.


    Figure 29: Goto date 31 Oct 98 at the Week Level.



  3. If the current display is at the day level, the system simply updates the display to the selected date, with no component of the display highlighted.

  4. If the current display is at the item level or not a calendar view, the system brings to the front the most recently active display window at the day, week, month, or year level, if any. This newly fronted window is then updated per the immediately preceding rule a, b, or c, whichever is applicable.

  5. If there is no calendar view window on the screen, the system creates a new window at the standard start-up level and updates that window per the immediately preceding rule a, b, or c, whichever is applicable. The default start-up level is the month view; this default setting can be changed via the option settings commands described in Section 2.7.4.

If multi-window mode is on, the system follows these same rules, but instead of updating the current or most recently active window at a given level, it creates a new window at that level. The new window having been created, the system updates the window per rule a, b, or c, whichever is applicable.

The user may enter dates in a variety of common formats. Details of these formats are covered in Section . If the user enters an improperly formated date string, the system highlights the entry, whereupon the user may retype the date or press the `Cancel' button to cancel the operation entirely. Further details of this and other error conditions are covered in Section .

2.3.2.4. Upper and Lower Date Bounds

The earliest and latest possible dates in a calendar are 1 January 0000 and 31 December 9999, respectively. These are the operative boundaries of the `View Next', `View Previous', and `Goto Date' commands at the day through year levels. At the item level, the operative boundaries of `View Next' and `View Previous' are the latest and earliest scheduled items, respectively.

When user issues `View Next' (or one of its shortcuts) at the upper end of the operative boundary, the command has no effect. Similarly, when the user issues `View Previous' (or one of its shortcuts) at the lower end of the operative boundary, the command has no effect. Specific details of how the system indicates a no-effect command are covered in Section .




Prev: structural-viewing | Next: list-viewing | Up: viewing | Top: index