Customizing a product

The plug-in associated with a primary feature is where the branding information for a product is specified.  There are many customizable aspects of a product.  Product-level customizations are defined using the about.ini file and other files described therein.  Products can also control the default preference values of other plug-ins.  This is done using the plugin_customization.ini file.

Referring once again to our sample product's primary feature plug-in, let's look closer at how the product is customized.

com.example.acme.acmefeature_1.0.0/
		plugin.xml
		about.ini
		about.html
		about.mappings
		about.properties
		acme.gif
		plugin_customization.ini
		plugin_customization.properties
		splash.bmp
		welcome.xml

About dialogs

The platform "about" dialog is shown whenever the user selects Help->About in the workbench menu.  

The about dialog is constructed using information supplied by features and plug-ins.  All features and plug-ins should contribute an about.html file that provides information about that particular plug-in.  This information is displayed when the user requests feature details or plug-in details and selects a particular feature or plug-in.

The primary feature also supplies the information and graphics for the overall product.  Additional files are used to specify this information.

Window images

A 16x16 pixel color image can be used to brand windows created by the product.  It will appear in the upper left hand corner of product windows.  It is specified in the windowImage attribute in the about.ini file.  The path should be specified as a plug-in relative path.  A proper entry for the directory structure shown above would be as follows:

windowImage=acme.gif

Welcome page

The description for the product's welcome page should be defined in an xml file in the format described in Platform Welcome Page Configuration.  It is specified in the welcomePage attribute in the about.ini file. The path should be specified as a plug-in relative path.  A proper entry for the directory structure shown above would be as follows:

welcomePage=welcome.xml

You can also specify an national language lookup for the file.  (See Locale specific files for more detail.)

welcomePage=$nl$/welcome.xml

Splash screens

The product splash screen is supplied in a splash.bmp file located in the primary feature plug-in directory.  The image should be supplied in 24-bit color BMP format (RGB format) and should be approximately 500x330 pixels in size.  If splash screens need to be customized for different locales, they can be placed in a fragment of the primary feature's plug-in.

Preferences defaults

The plugin_customization.ini file is used to set the default preference values for preferences defined by other plug-ins.  This file is a java.io.Properties format file. Typically this file is used to set the values for preferences that are published as part of a plug-in's public API.  That is, you are taking a risk if you refer to preferences that are used by plug-ins but not defined formally in the API.  

One common customization is to set the default perspective for the workbench.  This preference is defined in the org.eclipse.ui plug-in.   The following example assumes that the product should be launched with the resource perspective as the default perspective.

org.eclipse.ui/defaultPerspectiveId=org.eclipse.ui.resourcePerspective

If you discover you need to change the default value for one of another plug-in's preferences, consult the API documentation for that plug-in to see if the preference is considered public.

The plugin_customization.properties file contains translated strings for the plugin_customization.ini file.

Copyright IBM Corporation and others 2000, 2003.