The resources that are important to customize should be listed in an app-custom file. The app-custom file contains all of the necessary information to generate a customizing tool interface that is unique for each application. For more information, see the following:
The customizing tool uses the application class to name app-custom files. Applications have two names: their application name, which is usually the name used to start the application, and their application class, which is permanently coded into the application.
By default, the customizing tool searches for the app-custom file in the following places, in the order listed. The first file found is used. ($HOME is the user's home directory. Locale is the locale in which custom is running. Class is the class of the application to be customized.)
The place where the customizing tool looks for the app-custom file can be changed by specifying the Custom.appCustomPath resource.
Each line of the resource panel description file has the following format:
Group Type Resource Description [Values];
Following is an explanation of these parameters:
The following provides a more detailed description of individual data type app-custom file syntax:
Group Type Resource Description;Following is an example of a color resource app-custom file syntax:
"Menu Bar" Color *menubar*background "menu bar background";
Group Picture Resource Description PictureType;Following is an example of the app-custom file syntax:
Icon Picture *appIcon "application icon" bitmap;The PictureType value can be one of three types: bitmap, pixmap, or all. If bitmap is set, only bitmaps can be browsed; pixmap is similar. However, if all is set, both bitmaps and pixmaps are browsed.
Bitmaps are black and white images where file names end with .bm or .xbm; pixmaps are multicolored images where file extensions are .pm or .px.
Group SelectMany Resource Description "Separator" Item1 [= String] Item2 [= String]... ;The Separator parameter specifies one or more characters that are used to separate each of the items the user selected when the resource definition is written to the .Xdefaults file. Following is an example of the app-custom file syntax:
Foods SelectMany *iceCream "Ice Cream Choices" " " vanilla chocolate strawberry ;If you want to see more descriptive names for the choices, you can attach a string to each value with an = (equal sign). This is especially useful for translating values into other languages.
Foods SelectMany *iceCream "Ice Cream Choices" ", " vanilla = "Vanilla Flavor" chocolate = Fudge strawberry ;
Group SelectOne Resource Description Item1 [= String] Item2 [= String]... ;Following is an example of the app-custom file syntax:
Foods SelectOne iceCream "Ice Cream Choices" vanilla chocolate strawberry ;The selectone data type is represented by an Option menu button to switch between the values. The first option is always <default> . This is consistent with the other data types because no values are written to the resource database unless you have specifically chosen one.
You can select an item by pressing the Option button, dragging the mouse over the list, and releasing the mouse button on your choice.
If you want to see more descriptive names for the choices, you can attach a string to each value with an = (equal sign). This is especially useful for translating values to other languages.
Foods SelectOne *iceCream "Ice Cream Choices" vanilla = "Vanilla Flavor" chocolate = Fudge strawberry ;
A brief example of an app-custom file follows:
! XClock app-custom file Size Number *width "width of clock"; Size Number *height "height of clock"; Color Color *foreground "foreground"; Color Color *hands "analog hands"; Color Color *highlight "highlight analog hands"; Color SelectOne *reverseVideo "reverse video" true false; Font Font *font "digital clock font"; Behavior Number *update "interval of updates/n (sec)"; Behavior SelectOne *analog "type of clock" true = analog false = digital; Behavior SelectOne *chime "chime every half hour" true false; Behavior Number *padding "internal padding (pixels)";
The following are guidelines for writing app-custom files:
If you already have resources in your .Xdefaults file for an application, you can load your resource values onto the customizing tool interface, remove the old resources from your .Xdefaults file, and use the customizing tool to customize the application in the future.
If the app-custom file does not contain all the resource strings you need, you can create a subdirectory named app-custom in your $HOME directory, copy the app-custom file from the /usr/lib/X11/app-custom directory into it, and add the needed resource strings to this file. To create a new app-custom file, copy the DEFAULT app-custom file and use it as a template.
If you want to create a new app-custom file, you should add the app-custom file and the application name to the Custom.listOfApps resource. This resource is used to display the application names on the starting dialog. The application name and corresponding app-custom file must be listed in pairs with the following syntax:
Application:app-custom,
Custom.listOfApps: xclock:XClock,custom:Custom,msmit:Msmit
You can specify a maximum of 100 applications.
Group resources into the following recommended categories:
If the application resources do not fall into one of these categories, you can create additional categories. The new categories can be added after the other categories. You can create a new category if any of the standard categories contain too many resources (more than 15 or 20). The new category needs to be added after the category whose limit was exceeded.
The following are some general guidelines for selecting which resources to list in app-custom files:
$MWM**clientDecoration "client decoration *"
Once you create your app-custom file, you can check the syntax by running the customizing tool.
Using the AIXwindows Customizing Tool Overview
Using the Customizing Tool Main Window
How to Start the Customizing Tool
The xset command