定制主要功能部件

在使用主要功能部件机制时,产品定制的工作方式会有所不同。功能部件的品牌信息位于主要功能部件标识的插件中(或者,如果未指定,则位于与主要功能部件同名的插件中)。为我们假想的 acmeweb 应用程序指定和定义品牌信息的文件在以下样本目录结构中突出显示:

acmeweb/
	acmeweb.exe(产品可执行文件 - 调用 eclipse.exe 并指定主要功能部件)
	eclipse/
		.eclipseproduct
		eclipse.exe
		startup.jar
		install.ini
		.config/
		platform.cfg
		jre/
		features/
			com.example.acme.acmefeature_1.0.0/    (主要功能部件)
				feature.xml
		plugins/
			com.example.acme.acmefeature_1.0.0/    (主要功能部件的插件。包含标记信息。
				plugin.xml
				about.ini
				about.html
				about.mappings
				about.properties
				acme.png
				plugin_customization.ini
				splash.jpg
				welcome.xml
			com.example.acme.acmewebsupport_1.0.0/
			...
		links/
			...

主要功能部件相关联的插件就是指定产品的品牌信息的位置。一个产品有许多可定制的方面。产品级定制是使用此处描述的 about.ini 文件和其它文件定义的。产品还可以控制其它插件的缺省首选项值。这是使用 plugin_customization.ini 文件实现的。

再次参考样本产品的主要功能部件插件,让我们进一步看看如何定制产品。

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

我们将查看针对产品扩展点查看的相同定制,重点放在使用主要功能部件机制时规范的不同之处。

“关于”对话框

在讨论产品级定制时,所有功能部件和插件应提供 about.html 文件,该文件提供有关该特定插件的信息。

主要功能部件还提供整个产品的信息和图形。使用附加文件指定该信息。

窗口图像

可将 16x16 像素彩色图像用于由产品创建的品牌窗口。它将出现在产品窗口的左上角。它是在 about.ini 文件的 windowImage 属性中指定的。路径应指定为插件相对路径。上面显示的目录结构的正确条目将为如下所示:

windowImage=acme.png

欢迎页面

使用 Eclipse 2.1 欢迎机制的插件应在 about.ini 文件中的 welcomePage 属性中指定欢迎页面文件。路径应指定为插件相对路径。上面显示的目录结构的正确条目将为如下所示:

welcomePage=welcome.xml

您还可以指定文件的本地语言查询。(有关详细信息,请参阅语言环境特定文件。)

welcomePage=$nl$/welcome.xml

闪屏

产品的闪屏在位于主要功能部件插件目录中的 splash.bmp 文件中提供。图像应以 24 位彩色 BMP 格式(RGB 格式)提供,并且大小应为大约 500x330 像素。若要为不同语言环境定制闪屏,则可将它们放置在主要功能部件插件的段中。

首选项缺省值

plugin_customization.ini 文件用于设置其它插件定义的首选项的缺省首选值。此文件是 java.io.Properties 格式文件。通常使用此文件来设置作为插件公共 API 一部分发布的首选项值。也就是说,若您引用插件使用的首选项,但它们未在 API 中正式定义,则要冒风险。  

一个通常的定制是设置工作台的缺省透视图。此首选项在 org.eclipse.ui 插件中定义。以下示例假设在启动产品时应使用资源透视图作为缺省透视图。

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

若您发现需要更改其它某个插件首选项的缺省值,则查阅该插件的 API 文档,以查看该首选项是否被当作公共首选项。

plugin_customization.properties 文件包含 plugin_customization.ini 文件的转换字符串。