在正式使用表单时,尽可能多地共享内容以节省资源十分重要。因此,当要处理多个表单时,应该将颜色管理与工具箱分开。
当然,可以为每个表单创建一个工具箱,但是,如果有许多表单的话,这太浪费资源了。可选择另一种做法:
为所有具有相同生命周期的表单创建一个工具箱。例如,如果正在创建多页面编辑器,则为每个编辑器创建一个工具箱,并在编辑器被除去时除去它。该编辑器中的所有页面都将共享此工具箱。
为每个插件创建一个颜色管理器(FormColors
)。创建工具箱时,将颜色管理器传递给该工具箱。工具箱将知道那些颜色是共享的,不会除去它们。
使用平台的字体支持,如果有可能的话,使用 JFaceResources
的预定义字体。利用缺省字体、“条幅”字体和“标题”字体,可以实现许多目标。使用许多字体会使用户感到非常迷惑,并且,如果您管理自己的字体,就必须确保在各平台上有替代字体。JFace 字体保证能够在所有运行 Eclipse 的平台上正常显示。
在插件关闭时除去颜色管理器(不要假设插件关闭也意味着平台关闭 - Eclipse 运行时可以在平台运行时动态地卸载插件)。
使用表单颜色管理器来分配表单所需的所有颜色。