我们已经了解了插件可以如何向工作台添加编辑器, 但是,我们尚未考察编辑器的实现。
编辑器没有“典型”实现模式,原因是编辑器通常提供特定于应用程序的语义。例如,编辑和管理特定资源类型的工具将提供定制的行为来处理由资源提供的数据。
编辑器可以有各种形状和大小。如果插件的编辑器是基于文本的,则编辑器可以使用现有的缺省文本编辑器, 或者使用 JFace 中提供的设施来创建定制文本编辑器。“Java 开发工具”(JDT)编辑器使用了后一种方法。
如果插件的编辑器不是基于文本的,则插件必须实现定制编辑器。可以有几种方法来构建定制编辑器,所有这些方法都取决于编辑器的外观和行为。
基于表单的编辑器可以类似于对话框或向导的方式来对控件进行布局。“插件开发环境”(PDE)使用此方法来构建它的清单编辑器。
可以使用 SWT 级别代码来编写图形增强编辑器。例如,编辑器可以创建它自己的 SWT 窗口来显示信息, 或者它可以使用对应用程序优化的定制 SWT 控件。
面向列表的编辑器可以使用 JFace 列表、树和表查看器来处理它们的数据。
一旦已经确定了编辑器的实现模型, 为编辑器行为编程就类似于为独立的 JFace 或 SWT 应用程序编程。