All menu items in the initial overviews of Figures
2
and
4
are shown enabled for clarity in the figure. The precise enabled/disabled
state of menu items is summarized in Table 15.
Menu Item | When Enabled and Disabled |
File: | |
Table 15: Summary of enabled/disabled states for all menu
items..
Where the user has no explicit control over this, e.g., in the admin dialogs, the dialogs hold the information most recently entered by the use. This history extends during the execution of the Calendar Tool, but not between executions.
May be OK to relax dialog history requirements if a particular GUI environment does things consistently differently. Give some examples, of e.g. Java versus how things are defined here.
The three components of a day view are separately scrolled. [Show an example of this, e.g., with lots of events, tasks, and some out-of-normal-range items. Also reiterate that hiding non-normal times never hides scheduled items, with scrolling invoked as necessary if there are some odd-ball things scheduled at non-normal hours.
Need to deal with the (new) fact that there are two font sizes -- item and other. Also need to explain that the rules for scheduled-item display sizes are based on some kind of "whatever fits" rule. Finally, as noted below, need to say that font change does not fully resize a window, including even the funky case where labels don't fit any more (maybe). The tricky deal is with things like month and year views, where the font-change rules are not necessarily crystal clear. Unfortunately, we probably have to go through most of the different display types and specify reasonable font-change rules for all.
The default initial size of the view displays is based on the size of the currently selected display font. In specifying display size, the following standard units of typographic measure are used:
Unit | Meaning |
p | one printer's point = 1/72 inch |
S | user-selected font size in points; default font is 12-point courier |
V | vertical height of text line, including vertical spacing = 1.2 x S |
em | width of a representative "m" character = 6 x S |
Based on these units, Table 16 defines the default size for each of the view- level display windows.
View Level | Dimensions |
item | 60em wide by 34V high |
day | time column is W+4em wide, where W is the width in characters of widest displayed time; title column is 64em wide; total height is TIem x Rem, where TI is the current setting of the time increment option and R is the total number of displayed rows based on the current settings of the normal time range and show/hide 24 hours options |
week | each day column is 10em wide; total width is N columns, where N is the number of days based on the current setting of the normal day range option; total height is 24V |
month | each day cell is 10em square; total width is 7 cells; total height in cells is based on the number of days in a month |
year | 72em wide; total height is 14V + W1V + W1V + W1V + W1V, where each Wi is number of weeks in the month with the most weeks for each of the four quarters of the year. |
In all displays, border lines are 1p and the spelled-out date title at the top is 1V high.
The user may change the default font family and size in the preference setting dialog.
In general, all views scale evenly when the display window is resized, but font size does not change. There is no maximum window size, other than that dictated by the physical limits of a particular display screen. The minimum window size is generally based on the size of the currently selected text font. Specific details of resizing windows follow.
Display features for the day view:
The precise default format of an item listing is as follows:
Talk about how font size changes affect resizing, keeping it minimal. In particular, the height and width of the scheduled-item guts of view windows should not change, but the internal height of things like the title date need to change. Include talk about how text is filled horizontally as much as possible in the guts of displays.
The example to address here is when in the context of Figure 18 the user adds appointments at the following times: 3-4PM, 2:45-3:15PM, 3:15-3:45PM.
Here's the rule that I think works, which may be easier to explain if we think some more about it. For any day, create sets of items with any overlap whatsoever. Sort those items by the normal criteria, vis a vis earliest start time, shortest duration, alphabetically earliest title. Within this list, move all items over as far as possible to the left, as long as the no two items in the same column overlap and the sorting criteria continue to be met. It appears what we're doing is maximally filling each column, i.e., not leaving any space blank in a column if a none overlapping item will fit there. If tow or more items will fit in a give space, then the one chosen is the one earliest in the sorting order, with the unchosen one relegated somewhere to the right, in the (recursively) correct position. "Recursively correct" means in the leftmost column where it will fit such that all criteria are met.
At the day through year levels, the window position stays fixed at the top. At the item level, the window position stays fixed at the bottom. OK, the spelling out in the last sentence made me realize that its pretty bogus and non-orthogonal. So, we'll change the item-level display to have the time and data at the top.
If Macintosh implementors want to adhere to the non-floating menubar
convention, then the current filename display will be missing. This is
acceptable, since the user can determine current file using the `View
Calendars' command.