dtfpfile(special file)

NAME
dtfpfile — format and locations of front panel configuration files

SYNOPSIS

set DtDbVersion=version_number
set VariableName=variable_value
RecordType record_name
{
        # Comment
        Keyword Value
        Keyword Value
        ...
}

DESCRIPTION

The dtfpfile front panel database provides definitions for the components that define the content and functionality of the front panel. Files containing front panel definitions must end with the .fp suffix. Like the action and data type database, the front panel database is constructed by reading all files ending in the .fp suffix found in the search path specified by the DTDATABASESEARCHPATH environment variable.

See dtdtfile(4) for a complete description of the directory locations where these database files are found and for a description of the specific syntax for the database files.

  File Format

The general syntax of the front panel configuration files is as described above in the SYNOPSIS section of this man page.

The Comments, Versions and Variables fields are described in dtdtfile(4).

The front panel record types each have a set of Keyword and Value pairs. There are six record types defined: PANEL, BOX, SUBPANEL, SWITCH, CONTROL and ANIMATION. Each record type has a set of keywords defined for it. Many of the keywords are used for multiple record types.

  Record Types

PANEL front panel name
    The PANEL record type defines the outermost container of the front panel. It can contain one or more BOXes and optionally repositioning handles, a menu and a minimize button. The keywords defined for PANEL are described in the following table.
    PANEL Record Type Keywords and Values
    KeywordValueDefault
    CONTROL_BEHAVIOR(double_click/ single_click)single_click
    DISPLAY_CONTROL_LABELS(True/False)False
    DISPLAY_HANDLES(True/False)True
    DISPLAY_MENU(True/False)True
    DISPLAY_MINIMIZE(True/False)True
    HELP_STRINGstringNULL
    HELP_TOPICtopic nameNULL
    HELP_VOLUMEvolume nameFPanel
    LOCKED(True/False)False
    PANEL_GEOMETRY{+-}xoffset[{+-}yoffset]NULL
    RESOLUTION(high/medium /low/match_display)match_display
    SUBPANEL_UNPOST(True/False)True
    tgroup dispwid="5.93in"

BOX box name
    The BOX record type defines a container within a PANEL that can hold a row of CONTROLS and at most one SWITCH container. Multiple BOXes within a PANEL are stacked vertically. The keywords defined for BOX are described in the following table.
    BOX Record Type Keywords and Values
    KeywordValueDefault
    CONTAINER_NAMEfront panel nameNULL (required)
    DELETE(True/False)False
    HELP_STRINGstringNULL
    HELP_TOPICtopic nameNULL
    HELP_VOLUMEvolume nameFPanel
    LOCKED(True/False)False
    POSITION_HINTS(first/last/integer ≥ 1)first

SUBPANEL subpanel name
    The SUBPANEL record type defines a secondary container for CONTROLs that slide up from the front panel. SUBPANEL s can also contain a drop zone where new controls can be dynamically added. The keywords defined for SUBPANEL are described in the following table.
    SUBPANEL Record Type Keywords and Values
    KeywordValueDefault
    CONTAINER_NAMEcontrol nameNULL (required)
    CONTROL_INSTALL(True/False)True
    DELETE(True/False)False
    HELP_STRINGstringNULL
    HELP_TOPICtopic nameNULL
    HELP_VOLUMEvolume nameFPanel
    LOCKED(True/False)False
    TITLEstringNULL

SWITCH switch name
    The SWITCH record type defines a container within a BOX that contains a set of push buttons, each of which give access to a corresponding workspace. See dtwm(1) for a description of the multiple workspace capabilities. Also contained within the SWITCH container is an optional set of CONTROLs. These are presented in a column on each side of the push buttons. The keywords defined for SWITCH are described in the following table.
    SWITCH Record Type Keywords and Values
    KeywordValueDefault
    CONTAINER_NAMEbox nameNULL (required)
    DELETE(True/False)False
    HELP_STRINGstringNULL
    HELP_TOPICtopic nameNULL
    HELP_VOLUMEvolume nameFPanel
    LOCKED(True/False)False
    NUMBER_OF_ROWSinteger2
    POSITION_HINTS(first/last/integer ≥ 1)first
    tgroup dispwid="5.93in"

CONTROL control name
    The CONTROL record type defines the main functional component of the front panel. CONTROLs typically have actions defined for them that are invoked on selection or drag and drop or both. CONTROL s are displayed with icons or labels or both and can have iconic animations associated with them. The keywords defined for CONTROL are described in the following table.
    CONTROL Record Type Keywords and Values
    KeywordValueDefault
    ALTERNATE_ICONimage nameNULL
    CLIENT_GEOMETRYwidth x heightNULL
    CLIENT_NAMEclient nameNULL
    CONTAINER_NAMET{
    (box name/ switch name/subpanel name)
    T}NULL (required)
    CONTAINER_TYPE(BOX/SWITCH/ SUBPANEL)NULL (required)
    DATE_FORMATformat string%b%n%e
    DELETE(True/False)False
    DROP_ACTIONaction_nameNULL
    DROP_ANIMATIONanimation nameNULL
    FILE_NAMEpathnameNULL
    HELP_STRINGstringNULL
    HELP_TOPICtopic nameNULL
    HELP_VOLUMEvolume nameFPanel
    ICONimage nameNULL
    LABELstringNULL
    LOCKED(True/False)False
    MONITOR_TYPE(none/mail/ file)none
    POSITION_HINTS(first/last/integer ≥ 1)first
    PUSH_ACTIONaction_nameNULL
    PUSH_ANIMATIONanimation nameNULL
    PUSH_RECALL(True/False)False
    TYPET{
    (blank/busy/ client/clock/date/ file/icon)
    T}icon

ANIMATION animation name
    The ANIMATION record types are a sequence of image name and time delay pairs that are displayed by a CONTROL on a PUSH_ACTION or DROP_ACTION.
    ANIMATION Record Type Keywords and Values
    KeywordValueDefault
    ANIMATIONimage name [ millisecond delay]None [200]

  Keyword and Value Descriptions

The following list contains a description of each of the keywords defined by the front panel.

ALTERNATE_ICON
    Used with record types of: CONTROL.

    Used with control types of: busy and icon.

    ALTERNATE_ICON defines an image to be used to replace the normal image within a control with a mail or file value for the MONITOR_TYPE. The image is displayed when the file being monitored changes. For the busy control, ALTERNATE_ICON is cycled with ICON to give the blinking effect.

ANIMATION
    Used with record types of: ANIMATION.

    Used with control keywords of: PUSH_ANIMATION and DROP_ANIMATION.

    ANIMATION defines a sequence of images to be displayed for either a PUSH_ACTION or DROP_ACTION. Each animation within the list is displayed in order with a default time separation of 200 milliseconds. For a slower or faster sequence, the image name value can be followed by the amount of time to display the image. If no time value is specified, the previously specified value is used.

CLIENT_GEOMETRY
    Used with record types of: CONTROL.

    Used with control type of: client.

    Used with control keywords of: CLIENT_NAME.

    CLIENT_GEOMETRY specifies the size (in pixels) needed for the window of a client displayed within the front panel.

CLIENT_NAME
    Used with record types of: CONTROL.

    Used with control types of: client or icon.

    Used with control keywords of: PUSH_RECALL.

    CLIENT_NAME specifies a name used to associate a control with an executable. It is necessary for control types of client (an X client running within the front panel) and for icon when the keyword PUSH_RECALL is True. The value client name is the name of the executable or can be set via a command-line argument for some clients (such as xterm -name panelterm). The client name for a running client can be found by executing xprop. The first string of the WM_CLASS property is the value used.

CONTAINER_NAME
    Used with record types of: BOX, SUBPANEL, SWITCH and CONTROL.

    CONTAINER_NAME associates a component with its parent. For example, the CONTAINER_NAME value for a SWITCH tells the front panel into which BOX it should be placed. Since controls can reside in several different component types, CONTAINER_NAME is used in conjunction with CONTAINER_TYPE to define a control's parent.

CONTAINER_TYPE
    Used with record types of: CONTROL.

    CONTAINER_TYPE defines a control's parent type. This is used to identify a control uniquely so that it can be created within the proper parent.

CONTROL_BEHAVIOR
    Used with record types of: PANEL.

    CONTROL_BEHAVIOR provides the mechanism for setting the user model for front panel controls. Controls can be set to invoke their PUSH_ACTION by either a single or double click.

CONTROL_INSTALL
    Used with record types of: SUBPANEL.

    CONTROL_INSTALL enables or disables dynamic control installation into subpanels. A value of True causes the control installation area to be displayed within the subpanel.

DATE_FORMAT
    Used with record types of: CONTROL.

    Used with control types of: date.

    DATE_FORMAT specifies the layout of the date string for a control of type date. The format is the same used by the UNIX strftime(3) function.

DELETE
    Used with record types of: BOX, SUBPANEL, SWITCH and CONTROL.

    DELETE is used to override and remove a non-locked component from the front panel. This is necessary to eliminate system default front panel components without replacing the default files. To use DELETE, a copy of the component definition with the additional DELETE keyword is stored in a file with an .fp suffix in the user's or application type's directory.

DISPLAY_CONTROL_LABELS
    Used with record types of: PANEL.

    DISPLAY_CONTROL_LABELS specifies whether the controls contained within the front panel's boxes have their labels displayed.

DISPLAY_HANDLES
    Used with record types of: PANEL.

    If DISPLAY_HANDLES is set to True, the move handles are displayed along the left and right edges of the front panel.

DISPLAY_MENU
    Used with record types of: PANEL.

    If DISPLAY_MENU is set to True, and DISPLAY_HANDLES is also set to True, the system menu button is displayed in the upper left hand corner of the front panel.

DISPLAY_MINIMIZE
    Used with record types of: PANEL.

    If DISPLAY_MINIMIZE is set to True, and DISPLAY_HANDLES is also set to True, the minimize button is displayed in the upper right hand corner of the front panel.

DROP_ACTION
    Used with record types of: CONTROL.

    DROP_ACTION specifies the function that is invoked when a drop occurs on the control.

DROP_ANIMATION
    Used with record types of: CONTROL.

    Used with all control types except: client.

    DROP_ANIMATION specifies the name of an animation record to be displayed when a drop occurs on the control. The control must have a DROP_ACTION defined for the animation to be used.

FILE_NAME
    Used with record types of: CONTROL.

    Used with control types of: icon and file.

    For the control type of file, FILE_NAME is the pathname of the file to be used for the control. The file's file type, actions and images are extracted from the action database for the control.

    For MONITOR_TYPE mail and file, FILE_NAME specifies the pathname of the file the front panel monitors for either mail arrival or some other user-defined data.

    For MONITOR_TYPE file, the ALTERNATE_ICON image is displayed when the monitored file is non-empty. The ICON image is displayed if the file is empty or non-existent.

    For MONITOR_TYPE mail, the ALTERNATE_ICON image is displayed when the file increases in size.

HELP_STRING
    Used with record types of: PANEL, BOX, SUBPANEL, SWITCH and CONTROL.

    HELP_STRING specifies an on-line help string to display when help is requested over a front panel component. Since each component type can have a help string associated with it, there is a precedence used in deciding which help string to display. Control help takes precedence over box help, switch help and subpanel help. Box help takes precedence over subpanel help. The HELP_STRING value is used only if no HELP_TOPIC value is defined.

HELP_TOPIC
    Used with record types of: PANEL, BOX, SUBPANEL, SWITCH and CONTROL.

    HELP_TOPIC specifies an on-line help topic that is used with either the default help volume or a help volume specified by the HELP_VOLUME keyword to display help information when requested over a front panel component. Like the HELP_STRING keyword, each component type can have a help topic associated with it and the same precedence rules are used.

HELP_VOLUME
    Used with record types of: PANEL, BOX, SUBPANEL, SWITCH and CONTROL.

    When HELP_VOLUME is used in conjunction with HELP_TOPIC, it defines the help information to be displayed for a front panel component.

ICON
    Used with record types of: CONTROL.

    Used with control types of: icon, file and busy.

    ICON specifies the image to be displayed within a control.

LABEL
    Used with record types of: CONTROL.

    Used with control types of: icon, file, clock and busy.

    LABEL specifies the string to be displayed when a control is in a subpanel.

LOCKED
    Used with record types of: PANEL, BOX, SUBPANEL, SWITCH and CONTROL.

    LOCKED provides the mechanism to prevent a component definition of identical type, name and parent from overriding (replacing) this definition. Since the front panel can be defined within multiple configuration files, it provides the flexibility to override components found earlier in the search path. Like actions and file types, this allows the front panel to be customized at several levels.

MONITOR_TYPE
    Used with record types of: CONTROL.

    Used with control types of: icon and file

    MONITOR_TYPE specifies the method of checking the file being monitored, specified by the keyword FILE_NAME.

NUMBER_OF_ROWS
    Used with record types of: SWITCH.

    NUMBER_OF_ROWS provides control over the layout of the workspace switch buttons. The switch buttons are arranged in a row and column layout with the NUMBER_OF_ROWS keyword defining the number of rows in the layout. The number of columns is derived from this value and the total number of switch buttons.

PANEL_GEOMETRY
    Used with record types of: PANEL.

    PANEL_GEOMETRY specifies a non-default location to position the front panel when it is created. By default, the front panel is centered along the bottom of the display.

POSITION_HINTS
    Used with record types of: BOX, SWITCH and CONTROL.

    POSITION_HINTS specifies the ordering of boxes in the front panel, the switch and controls in boxes, and controls in subpanels. When two components have the same value for POSITION_HINTS, the first one read from the configuration file is placed first.

PUSH_ACTION
    Used with record types of: CONTROL.

    PUSH_ACTION specifies the function that is invoked when a selection occurs on the control.

PUSH_ANIMATION
    Used with record types of: CONTROL.

    Used with all control types except: client.

    PUSH_ANIMATION specifies the name of an animation record to be displayed when a selection occurs on the control. The control must have a PUSH_ACTION defined for the animation to be used.

PUSH_RECALL
    Used with record types of: CONTROL.

    Used with control keywords of: CLIENT_NAME.

    When PUSH_RECALL is set to True, it specifies that only one process can be started by the control. If the process is already running, it is displayed within the current workspace and shuffled to the top of the window stack. The value for the CLIENT_NAME keyword is used to identify the process for push recall behavior.

RESOLUTION
    Used with record types of: PANEL.

    RESOLUTION allows the icon set for the front panel to be forced to a particular set. By default, the front panel determines the display resolution at runtime and chooses the high resolution icon set if the display width is 1024 pixels or wider.

SUBPANEL_UNPOST
    Used with record types of: PANEL.

    When SUBPANEL_UNPOST is set to True, it causes a subpanel to hide itself whenever a PUSH_ACTION occurs on one of the subpanel controls. If the subpanel has been torn off of the front panel, the behavior of the subpanel is forced to remain posted on PUSH_ACTION.

TITLE
    Used with record types of: SUBPANEL.

    TITLE specifies the string to be displayed in the title area of the subpanel.

TYPE
    Used with record types of: CONTROL.

    A number of different control types are defined by the front panel:

    blank
        Space-holder control

    busy
        Busy light

    client
        A client window

    clock
        Front panel clock

    date
        FroCaretnt panel date

    file
        References a file on the file system and uses that file's actions and image

    icon
        Front panel general control

FILES

The default front panel configuration file is /usr/pkg/dt/appconfig/types/C/dtwm.fp.

Files containing the attributes of dynamically created front panel components are in the directory $HOME/.dt/types/fp_dynamic.

APPLICATION USAGE

Errors encountered when loading front panel database files are written to the user's $HOME/.dt/errorlog file.

SEE ALSO

dtwm(1), strftime(3), dtdtfile(4).