Common Desktop Environment: Programmer's Overview


The Common Desktop Environment Calendar comprises the infrastructure and API that enables users to schedule their time and resources in a networked environment. The Calendar GUI is part of the Common Desktop Environment run-time environment.

Calendar consists of:

Additionally, it provides a user interface for both GUI and TTY interaction. The system supports entering, deleting, and modifying calendar entries, as well as browsing and search features. You can access all this functionality through the network.

The development environment provides a library for client access to the Calendar data. It is extensible in that it allows users to define their own calendar entry attributes. The library provides a client callback mechanism for notification of database updates.

The calendar daemon implements the services behind the library of calendar and scheduling API calls. It supports deleting, inserting, and modifying calendar entries. It also manages calendar reminders and supports the creation and removal of the Calendar database. It also provides mechanisms for retrieving Calendar data.

Calendar entry data integrates with the desktop through drag and drop and the ToolTalk messaging interfaces.

The calendar and scheduling API is an implementation of the X.400 Application Programming Interface Association (XAPIA) Calendaring and Scheduling API 1.0. Use the calendar and scheduling API to integrate your application with Calendar, or to develop your own calendar application.

Library and Header Files

The Calendar library, libcsa, provides a programmatic way to access and manage Calendar data in a networked environment.

Include the csa/csa.h header file to access libcsa APIs in your application.

Demo Programs

You can find the Calendar demos in /usr/dt/examples/dtcalendar. Read the README file for detailed information on the demos.

Related Documentation

For more information on the calendar, see the relevant man pages, the Calendar help volume, and the Solaris Common Desktop Environment: Programmer's Guide.