The Front Panel is defined in a database of configuration files.
The configuration files provide a way to customize the Front Panel. Certain modifications can only be done by editing a configuration file, including:
Adding a new control position to the Main Panel.
Adding special types of controls, such as client windows.
Changing certain default behaviors—for example, whether the Front Panel controls respond to a single- or double-click.
To provide maximum flexibility in configuring the panel, these files can be personal, system-wide, or located on other systems.
The Front Panel is created and managed by the Workspace Manager.
The default Front Panel is defined in the Front Panel configuration file /usr/dt/appconfig/types/language/dtwm.fp.
This file should not be altered.
The Front Panel definition can be distributed among any number of files located locally or on remote systems.
Files used to define the Front Panel must meet these requirements:
The file name must end in .fp; for example, mail.fp.
The file must be located along the actions database search path.
The default actions database search path includes these directories, searched in the following order:
Personal customizations—HomeDirectory/.dt/types
System-wide customizations—/etc/dt/appconfig/types/language
Built-in panel and controls—/usr/dt/appconfig/types/language
An additional directory, HomeDirectory/.dt/types/fp_dynamic, is used for personal customizations made with the user interface. Do not use this directory for manual customizations.
The actions database search path may include additional directories added to configure the system for networking. In particular, additional remote locations are added when the system is configured to access an application server. For more information, see Database (Action/Data Types) Search Path.
The Front Panel is assembled from all the configuration files located on the actions database search path.
Where there is a conflict between components of the definition, precedence rules determine which definition is used. Two components are in conflict with one another when they:
Have the same control name, CONTAINER_NAME
, and CONTAINER_TYPE
.
Compete for the same position (by having different names but
the same CONTAINER_NAME
, CONTAINER_TYPE
, and POSITION_HINTS
).
The Front Panel uses the following precedence rules:
If components have the same control name and container name and type, the component read first is used.
For example, if both a system-wide and built-in control contain these fields but are otherwise different:
CONTROL TextEditor { CONTAINER_TYPE BOX CONTAINER_NAME Top … }
then the system-wide control has precedence.
If two components complete for the same position, they are placed in the order in which they are read.
For example, if a user creates a new personal control for the Main Panel
(CONTAINER_TYPE
BOX and CONTAINER_NAME
Top) and assigns it POSITION_HINTS
5, the personal control will
bump the built-in control and all other controls with higher position numbers
one position to the right.
When you are modifying a control by creating a new system-wide
or personal version of it, the new control definition must specify the same
control name, CONTAINER_NAME
,
and CONTAINER_TYPE
. Otherwise,
the new control will appear in addition to the existing control.
When the user customizes the Front Panel using the Install Icon control and pop-up menus, files are written to the directory HomeDirectory/.dt/types/fp_dynamic.
The Front Panel creates an additional file, HomeDirectory/.dt/sessions/dtwmfp.session, that is used to save and restore the state of the customized Front Panel for each session.