Product Home

Doc Index


Adding Holidays/Special Events

When defining locale information in Calendar Wizard, you can specify holidays and other special dates to be indicated on calendar layouts.

Holidays and other special dates are collectively referred to as Events in Calendar Wizard. Each event belongs to a particular category for easy management. You can define several event categories for each locale (e.g. Public Holidays, Religious Holidays, Professional Holidays, Family birthdays, Anniversaries, etc). Then you can specify whether to show or hide events in a particular category when generating a calendar. This is a very convenient way of managing large number of events which can be defined for each locale.

A number of preset locales which is provided in Calendar Wizard have some events defined. When applied to a particular calendar layout, the preset information gets copied into the current calendar project. You can modify the event list for the project without affecting the original preset or you can modify a preset without affecting the project. Of course, you can modify a preset and then re-apply it to the project to update the project information as well.

To edit the events of the current calendar project, click the Events... button on the Language tab of the main dialog:

If you want to edit events of a locale preset, click the Edit... button in the Language Presets group of the Language tab, then pick a language, select the locale and click Edit. This will bring the Locale Properties dialog:

Click on the Events: Edit... button.

You will see the event list for the project or locale you've chosen:

You can select an event category from the Category list on top to show just events belonging to it.

The Events list contains the list of events defined in the selected category for the locale or project. The event date is displayed in parentheses (e.g. "(20 Jan)" if the date of the event varies from year to year). The event text is preceded by an asterisk (*) if the event if a holiday. If an event text is included in parentheses, then this particular event is marked is invisible and will not be shown on calendar layouts.

To add a new event, click the New... button. To edit an existing event, select it in the list and click Edit...

You can also create a new event by copying the information from an existing one by selecting the event in the list and clicking the Duplicate button.

The Event Properties dialog will appear which allows you to enter or edit the properties of an event:

Each event has a Name which is the text displayed on calendars. Also each event must be uniquely identified by an internal name which is not displayed anywhere but may be used if you want to base one event on another (e.g. you want to specify an event which happens 2 weeks after another event you've defined earlier). In most cases the name of the event can be used as its identifier, but in some cases when there is more than one event with the same name, the ID should be modified so that it is unique.

The Category specifies which category the event belongs to. You can select an existing category from the list or enter the name of a new category to create one.

Check the Holiday box if the event should be treated as a holiday (holidays are highlighted using different font/color).

You can create complex event definitions by creating intermediate events which are used as bases for "real" events. In this case you may not want the intermediate events to appear on the calendars. In this case, just remove the checkmark from the Visible box.

To specify the date of the event, you need to choose what kind of event it is:

  • If event appears on certain days of the week (e.g. every Saturday), then select Day Of Week event type and specify the set of week days the event occurs on.
  • If an event happens on the same day every month, (e.g. 15th of each month), specify Day Of Month, enter the day and select "Each Month" from the list
  • If an event happens on the same date every year, then select Day Of Month, enter the day and select the month from the list
  • For events which happens on a particular week of the month (e.g. 3rd Sunday of June), select Week Of Month and specify the condition. Note that this can define recurring events which happen every month or only once a year.
  • An event happening on a particular day of year can be defined by using Day Of Year event type and specify the day in the range of 1 to 366. If you want to count the day from the end of the year, then check From The End Of Year box. Note that the last day of year (Dec 31st) is day #1 from the end of year in this case.
  • To create an event which happens several days, weeks or months before or after another event, use the Relative event type. Specify the date offset, direction and the base event. Note that Calendar Wizard provides certain pre-calculated events which can be used as the basis for new events:
    1. Eastern Orthodox Easter
    2. Western Easter
    3. Orthodox Christmas (based on Julian Calendar)
    4. Vernal Equinox
    5. Summer Solstice
    6. Autumnal Equinox
    7. Winter Solstice

In addition to this, an event date can be further adjusted to be moved to a particular day of week. For example, you might want to create an event which happens at on Sunday on or after Summer Solstice. In this case, define a Relative event which happens "0 days before Summer Solstice" and then place a checkmark in Move To box and specify "Next Sunday".

If you want to specify the event to be guaranteed at least one week after the summer solstice (that is, if the solstice happens on Sunday, you want your event to on the be next Sunday), then also place a checkmark into Force Move box. This will cause the event to be moved even if the original date coincides with the target day of week.

In some cases it is useful to adjust event dates only if the original event falls on a particular day of week. For example, if a holiday falls on a weekend, move it to the next Monday. In this case, in addition to "Move To" command you need to specify Only If Falls On: and specify Saturday and Sunday.

In rare cases this is still not enough. Sometimes it is necessary to adjust the date in one direction if the original event falls on one day, and in other for other days. For example, if a holiday falls on day Monday through Wednesday, then move it to the previous Monday, otherwise move it to the next Monday.

The only way this can be done if two events with the same name (but different IDs) are specified. One event has a condition to move the date to previous Monday if the date falls on Mon, Tue, Wed. The other event will have the instruction to adjust the date to the next Monday if the date falls on Thu, Fri, Sat, Sun. To prevent both events from appearing on calendars at the same time, you need to use the Conditional Visibility control. Specify the first event to be visible only if it falls on Mon, Tue, Wed. And the second event should be visible on all the other days of week.

Next: Fine-Tuning Calendars and Printing >

[ Calendar Wizard Home | Oberon Product Index | Oberon Home Page ]

Copyright 2006 by Alex Vakulenko. All rights reserved.
This page was last revised on 02/13/06.