# The &kontact; Handbook

Cornelius Schumacher

    schumacher@kde.org

Antonio Salazar

    savedfastcool@gmail.com

Daniel Molkentin

    molkentin@kde.org

2003-2005 Cornelius Schumacher
&FDLNotice;
2005-02-22
1.1

&kontact; is the integrated solution to your personal information management (&PIM;) needs. It combines well-known &kde; applications like &kmail;, &korganizer; and &kaddressbook; into a single interface to provide easy access to mail, scheduling, address book and other &PIM; functionality.

KDE tdepim KMail Organizer KAddressBook KNotes Akregator PIM groupware Outlook Evolution

## Introduction

&kontact; is the integrated solution for personal information management. It combines the well-known &kde; applications for email, scheduling, address book, notes, and newsgroups (&kmail;, &korganizer;, &kaddressbook;, &knotes;, and &knode;) into a single interface. Being based on a true component framework &kontact; provides exactly the same functionality as the stand-alone applications, and adds more features, by making use of the integrated way &kontact; runs the applications as components. Users still retain the choice of which applications are run within &kontact; and which are run stand-alone.

In addition to the functionality of the individual applications &kontact; provides, a summary view and advanced drag & drop features between components.

## &kontact; Components

&kontact; integrates the following applications. See the individual application manuals for details on how to use them. These apply to running them as components inside &kontact; just as well as running them stand-alone.

### &kmail;

&kmail;, the &kde; mail client.

### &korganizer;

&korganizer;, the &kde; organizer and scheduling application.

### &kaddressbook;

&kaddressbook;, the &kde; contact manager.

### &knotes;

&knotes;, yellow sticky notes.

### &knode;

&knode;, the &kde; news reader.

### &kpilot;

&kpilot;, the &kde; Pilot synchronization application.

### &kitchensync;

&kitchensync;, the &kde; synchronization application.

### &akregator;

&akregator;, the &kde; RSS feed reader.

## The &kontact; Main Window

The main window consists of a side pane on the left showing the icons of the available components, the main view on the right which contains the main window of the active component and the usual menu, tool and status bars.

### Side Pane

The side pane serves multiple purposes. It allows for switching between components, shows which component is active and serves as the target for drag & drop operations to the different applications.

&kontact;'s Side Pane
&kontact;'s Side Pane

&kontact;'s Side Pane

For switching between components simply click on the corresponding icon. The main window of the component is shown and the menu, tool and status bars are adapted to reflect the functionality of the active component. If you activate a component for the first time there might be a small delay until the main view is changed, because components are loaded on demand. This means you don't waste memory for components you don't use.

The icons in the side pane can also be used as targets for drag & drop operations. For example, you can drag a mail from the mail part and drop it on the icon of the todo list or the calendar to create a todo or event associated with this mail.

Finally, you can change the size of the icons in the side pane. Right-clicking on the side pane will give you the option to use Large, Normal, or Small icons, as well as the option to use text only instead of icons.

If you dislike the sidebar, you can simply hide it by dragging the splitter. An alternative navigation between part is provided by the navigator toolbar, which will always be aligned on the opposite side of the mainwindow from the side pane.

### Main View

The view on the right which takes up most of the area of the &kontact; main window shows the active component. This exactly corresponds to the main window the component uses when run as a stand-alone application. The highlighted icon in the side pane indicates to which application the main view belongs. &kontact; remembers which component was active, so when starting &kontact; the view initially shows which one was activated when exiting &kontact; the last time.

&kontact;'s Main View
&kontact;'s Main View

&kontact;'s Main View

In addition, there are two ways of overriding the component that &kontact; starts in. The first is as an argument to the &kontact; program call (see ). The second is a setting in the &kontact; Settings dialog that will allow you to always start &kontact; in a certain mode.

&kontact; Starting Component Setting
&kontact; Starting Component Setting

&kontact; Starting Component Setting

### Menu, Tool and Status Bars

The menu, tool and status bars are adapted to the active component. That means that, in addition to some common functions like the help menu which are shown for all components, there are actions which are switched when the active component is switched. These actions available for each component are the same ones which are also available when running the application stand-alone.

Views of &kontact;'s menu bars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menu bars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menu bars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menu bars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menu bars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menu bars in the Summary View, Mail View, and Calendar View

Views of &kontact;'s menu bars in the Summary View, Mail View, and Calendar View

A special action common to all components is the New action. It allows creation of new objects like emails, contacts, appointments and todos independently of which component is active. The component responsible for processing the selected object is started, if required, and takes over the created object.

&kontact;'s New Menu
&kontact;'s New Menu

&kontact;'s New Menu

Another common action is the Synchronize action. It synchronizes mail and groupware folders depending on the active component. E.g., if the Calendar component is active, the button synchronizes all Calendar folders. In the Summary, the action synchronizes all folders independent of their content.

### Drag and Drop Functionality

&kontact; provides advanced drag and drop functionality between the programs it contains. Following is a brief description of each of the specific drag and drop operations that can be effected and the result of each.

#### &kmail; -> &korganizer; Todo List

Dragging a message from &kmail;'s Headers pane to the icon for &korganizer;'s Todo list ( ) will create a new Todo with Mail: Subject as the title and From: Sender To: Receiver Subject: Subject as the contents (where text that looks like this is information from the message itself), as well as the e-mail message itself as an attachment.

#### &kmail; -> &korganizer; Calendar

Dragging a message from &kmail;'s Headers pane to the icon for &korganizer;'s Calendar ( ) will create a new Event with Mail: Subject as the title and From: Sender To: Receiver Subject: Subject as the contents (where text that looks like this is information from the message itself), as well as the e-mail message itself as an attachment.

Note that dragging onto the Todo button creates a Todo, whereas dragging onto the Calendar creates an Event. More on this distinction is available in the &korganizer; documentation

#### &kmail; -> &kaddressbook;

Dragging a message from &kmail;'s Headers pane to the icon for &kaddressbook; ( ) will create a contact from the email address of the sender, unless a contact with that name already exists. A dialog box notifies you of this action.

#### &kaddressbook; -> &korganizer; Todo List

Dragging any number of entries from &kaddressbook;'s main window to the icon for &korganizer;'s Todo List ( ) will create a new Todo with "Meeting" as the title and the selected contacts as attendees.

Note that dragging onto the Todo button creates a Todo, whereas dragging onto the Calendar creates an Event. More on this distinction is available in the &korganizer; documentation

#### &kaddressbook; -> &korganizer; Calendar

Dragging any number of entries from &kaddressbook;'s main window to the icon for &korganizer;'s Calendar ( ) will create a new Event with "Meeting" as the title and the selected contacts as attendees.

Note that dragging onto the Todo button creates a Todo, whereas dragging onto the Calendar creates an Event. More on this distinction is available in the &korganizer; documentation

#### &knotes; -> &korganizer;'s Todo List

Dragging a note from &knotes; to the icon for &korganizer;'s Todo List ( ) will create a new Todo with the title set to the title of the note and the description set to the note itself.

## The Summary View

The default view when starting &kontact; for the first time is the summary view. It shows an overview of the most relevant information provided by the selected &kontact; components. These can be newsticker headlines, imminent appointments or birthdays, due todos, weather data, etc. Which information is shown is configurable by selecting the corresponding components in the &kontact; configuration dialog.

&kontact;'s Summary View
&kontact;'s Summary View

&kontact;'s Summary View

### Repositioning Summary View Components

The Summary View allows you to change where the components are in the view itself. So, if you prefer to have your Special Dates in the lower left and your to-dos in the upper right, you can rearrange the summary view to reflect that.

Repositioning components in the Summary View is as simple as dragging them to the new location you want them to be in. Click and hold on the grey title area of the component and drag the component to wherever you want it to be. Note that this positioning is done compared to other components. So you can move the Mail component to be below the to-do component in the view, but you can't place it in a specific position. If you have only one component in your summary view, the only option is to move it between the two columns of the view; two components can either be two in one column or one in each column; and so on and so forth. Whenever you are dragging a component, you will see a small preview box following your mouse around showing you the component.

Rearranging &kontact;'s Summary View
Rearranging &kontact;'s Summary View

Rearranging &kontact;'s Summary View

## Configuring &kontact;

### &kontact; Configuration Window

When selecting the Configure &kontact; action from the Settings menu, the &kontact; configuration dialog is shown. It provides a list of the configurations for all the active components of &kontact;. You can click the - symbol next to the component names to collapse their options so that you can view the options for the component you are looking for. Selecting one of the configuration options under a heading will bring up that configuration section on the right.

&kontact;'s Configuration Window
&kontact;'s Configuration Window

&kontact;'s Configuration Window

In addition, by clicking on the Configure... button, you can bring up a dialog that will allow you to select which components you want active from a list. By checking the box next to the component title you select the component to be put into the side bar and the summary view. The component is loaded and its main view is shown in the main window when clicking on its icon in the side pane for the first time. By unchecking the check box the component is removed from the side pane and summary view. Changes become effective by clicking the Apply or OK button.

&kontact;'s Select Components Window
&kontact;'s Select Components Window

&kontact;'s Select Components Window

You can also configure individual components by activating the component by clicking on the corresponding icon in the side pane of the main window and then selecting the menu item Configure application name from the Settings menu.

&kontact; Settings Menu When KMail is Selected
&kontact; Settings Menu When KMail is Selected

&kontact; Settings Menu When KMail is Selected

### Configuring &kontact;'s Summary View

When you select Configure Summary View... from the &kontact; Settings menu (only available in Summary View), a dialog pops up that allows you to select which summary plugins &kontact; should show in its summary view. Here is a brief list of the currently available plugins and what they do:

#### &kontact; Summary Plugins: Calendar

The Calendar plugin for &kontact;'s Summary View adds an area in the view labeled Appointments. This will display any appointments that currently apply.

&kontact; Calendar Summary Plugin
&kontact; Calendar Summary Plugin

&kontact; Calendar Summary Plugin

#### &kontact; Summary Plugins: Contacts

The Contacts plugin for &kontact;'s Summary View adds an area in the view labeled Birthdays and Anniversaries where birthdays and anniversaries of your contacts are displayed (for contacts who have that information set in their contact information; see the &kaddressbook; documentation for more information on setting relevant contact information). It contains the following information:

- Number of days from now when item will occur

- Date of birth/anniversary

- Name (Click on this to send an email, right-click for the option to view the contact's information)

- Age/Anniversary Year

&kontact; Contacts Summary Plugin
&kontact; Contacts Summary Plugin

&kontact; Contacts Summary Plugin

#### &kontact; Summary Plugins: KPilot

The KPilot plugin for &kontact;'s Summary View adds an area in the view labeled KPilot Information. This area contains a lot of information from KPilot, including:

- Last synchronization (with sync log)

- User who last synchronized

- Device last synchronized

- Current status

- Available conduits

&kontact; KPilot Summary Plugin
&kontact; KPilot Summary Plugin

&kontact; KPilot Summary Plugin

#### &kontact; Summary Plugins: Mail

The Mail plugin for &kontact;'s Summary View adds an area in the view labeled New Messages. This area is updated every time you receive new messages to inform you how many of these messages there are and which folder they are in.

&kontact; Mail Summary Plugin
&kontact; Mail Summary Plugin

&kontact; Mail Summary Plugin

#### &kontact; Summary Plugins: NewsTicker

The NewsTicker plugin for &kontact;'s Summary View adds an area in the view labeled News Feeds. This area contains the latest news from the currently configured news feeds. You can add and remove feeds in &kontact;'s Summary View Configuration. Please note that as of &kde; 3.4, the more efficient way of accessing RSS feed information is the new &akregator; application, which provides notifications instead of requiring constant checking of the Summary View to see if new articles have appeared.

&kontact; NewsTicker Plugin
&kontact; NewsTicker Plugin

&kontact; NewsTicker Plugin

#### &kontact; Summary Plugins: Notes

The Notes plugin for &kontact;'s Summary View adds an area in the view labeled Notes. This area displays all current notes' titles (titles default to the date/time the note was created). Clicking on the title of a note will bring up the Notes area.

&kontact; Notes Summary Plugin
&kontact; Notes Summary Plugin

&kontact; Notes Summary Plugin

#### &kontact; Summary Plugins: Todo List

The Todo List plugin for &kontact;'s Summary View adds an area in the view labeled Todos. This area contains all current todos, including ones that have been completed. It displays the title of the todo, the percentage of completion, and the current status of the todo. Note that you can purge all completed todos via the &kontact; Todo List. Clicking on a todo's title will currently do nothing.

&kontact; Todo List Summary Plugin
&kontact; Todo List Summary Plugin

&kontact; Todo List Summary Plugin

#### &kontact; Summary Plugins: Special Dates

The Special Dates plugin for &kontact;'s Summary View adds an area in the view labeled Special Dates. This area contains information based on the criteria selected in the configuration area of the plugin in &kontact;'s Summary View configuration. The Special Dates plugin is especially useful because it can display birthdays, anniversaries, holidays, and special occasions from both the calendar and the contact list in one place.

&kontact; Special Dates Plugin
&kontact; Special Dates Plugin

&kontact; Special Dates Plugin

#### &kontact; Summary Plugins: Weather

The Weather plugin for &kontact;'s Summary View adds an area in the view labeled Weather Information. This area contains the information for currently configured weather locations. For more information about configuring KWeather, the weather reporter used as a plugin within &kontact;, see the KWeather documentation.

&kontact; Weather Summary Plugin
&kontact; Weather Summary Plugin

&kontact; Weather Summary Plugin

### &kontact; Profiles

A profile is an arbitrary set of configuration values for any of the kontact components (mail, calendar, etc.) accompanied by a configuration file for the profile itself, which specifies its name, description etc. An example profile configuration file looks like this:

    [Kontact Profile]
    Description=Default KDE Kontact settings
    Identifier=KontactDefaults
    Name=Kontact Style

The format is the standard .ini file format used for configuration throughout KDE, including in kiosk.

&kontact;'s profile support makes it possible to load and save user settings in profiles. The settings stored in the profile include typical Look&Feel related options such as app-specific color schemes, icon sets, toolbar layout and application defaults. Personal information, e.g. accounts and identities are not stored in profiles.

Two default profiles are provided by Kontact: "&kontact; Style", which contains the default &kontact; settings, and "Outlook Style", adapting &kontact; to Microsoft Outlook Look&Feel. The user can adapt existing profiles, create new profiles from their current settings, and import and export profiles.

The dialog opened through Settings -> "Configure Profiles" allows profiles to be imported, exported, created, deleted and saved. They can also be loaded (applied) from there. Saving applies the currently active settings throughout Kontact to the selected profile, while import and export allow existing profiles to be written to or read from directories. To change a setting, one can edit the kontactrc file using a text editor and save it.

Apart from the configuration file, a profile directory can contain configuration skeleton files for Kontact as a whole (kontactrc) or for any of the components (korganizerrc, kmailrc, etc.). These files can in turn contain any configuration values that the profile should set (overriding the user's current configuration) when the profile is loaded.

- The korganizer configuration for the "Kontact Defaults" profile for example sets the calendar view to be merged, by default :

  [Views] Agenda View Calendar Display=CalendarsMerged

- The Outlook-like profile, on the other hand, sets it to be side by side, like in Outlook:

  [Views] Agenda View Calendar Display=CalendarsSideBySide

- If a profile wants to reset or remove a configuration key, it can specify that key like so:

  [General] activeBackground=KONTACT_PROFILE_DELETE_KEY

- This example resets the background color to whatever the KDE style suggests. The Outlook compatability profile sets this key to the Windows/Outlook color style:

  [General] activeBackground=47,103,255

Currently Kontact ships with two (incomplete) profiles, one which (re-)configures things to look and feel the way Kontact natively does, while the other one attempts to approach the look&feel of Outlook on Windows. To this end they change a variety of things, concretely the color palette used, the icon theme used, how the calendar view is layed out, whether the navigation toolbar is visible how the splitter sizes are initialized, in the main kontact interface.

## &kontact; On the Command Line

&kontact; has several command line arguments that can be used for certain actions.

First of all, &kontact; supports command line arguments that all KDE/Qt applications support. You can get a full list of these by typing:

% `kontact --help-all`

&kontact; also supports several command line arguments specific to it.

### Command Line Arguments

#### Module-related Arguments

To get a list of available &kontact; modules, you can type:

% `kontact --list`

Then, to start &kontact; with a module active, type:

% `kontact --module moduleName`

Where moduleName is one of the modules obtained using the previous command.

## Under The Hood

&kontact; makes extensive use of several &kde; key technologies, most notably KParts and &DCOP;.

The &GUI; integration of the components is done by plugins providing KParts versions of the applications. This only needs a thin additional layer on top of the already existing code of the stand-alone applications.

For communication between the components &DCOP; is used. This has the nice characteristic that it is completely transparent to whether the application is run stand-alone or embedded as KPart into &kontact;. When running inside of &kontact; an efficient in-process mode of &DCOP; is used.

## Credits and License

&kontact;

Program copyright 2004, The &kde; Developers

Contributors:

- Cornelius Schumacher schumacher@kde.org

- Daniel Molkentin molkentin@kde.org

- Don Sanders sanders@kde.org

- Tobias König tokoe@kde.org

- Matthis Hölzer-Klüpfel mhk@kde.org, the original author of the &kontact; framework.

- All the valued developers of the applications &kontact; is integrating. They did almost all the work.

Documentation copyright 2004-2005

Contributors:

- Cornelius Schumacher schumacher@kde.org

- Antonio Salazar savedfastcool@gmail.com

- Daniel Molkentin molkentin@kde.org

- All the members of the KDE documentation list who assisted with markup and style issues.

&kontact; homepage is at http://kontact.kde.org

&underFDL; &underGPL;
&documentation.index;