org.eclipse.ui.perspectives

我们已经了解了工作台允许用户控制插件功能的外观所采用的一些方法。可以使用窗口 -> 显示视图菜单隐藏或显示视图。可以使用窗口 -> 定制透视图...菜单隐藏或显示操作集。这些功能部件帮助用户组织工作台。

透视图

透视图在工作台窗口内部提供附加组织层。当用户在任务之间移动时,他们可以在透视图之间进行切换。透视图定义视图集合、 视图布局和用户首次打开透视图时应使用的可视操作集。

平台本身会定义一个透视图:资源透视图。其它平台插件(例如,帮助系统和 Java 工具)定义其它透视图。通过向 org.eclipse.ui.perspectives 扩展点进行添加,插件可以定义它自己的透视图。

plugin.xml 中的透视图的规范是简单明了的。工作台使用以下标记来定义它自己的资源透视图。

<extension
      point="org.eclipse.ui.perspectives">
      <perspective
            name="%Perspective.resourcePerspective"
            icon="icons/full/cview16/resource_persp.gif"
            class="org.eclipse.ui.internal.ResourcePerspective"
            id="org.eclipse.ui.resourcePerspective">
      </perspective>
   </extension>

插件必须提供透视图的标识名称,并且提供实现透视图的的名称。还可以指定图标。透视图类应当实现 IPerspectiveFactory

我们可以从标记中了解到代码中一定在进行实际操作。透视图 factory 的接口是简单明了的。IPerspectiveFactory 的实现器应该利用描述透视图及其透视图页面布局的信息来配置 IPageLayout

工作台部件布局

IPageLayout 的其中一项主要工作就是描述工作台窗口中的编辑器和视图的布置。注意,这些布局不同于 SWT 中的布局类。尽管 IPageLayout布局解决相似的问题(缩放和定位大型区域中的小窗口), 但是,您不需要了解 SWT 布局就可以提供透视图页面布局。

利用一个区域来初始化透视图页面布局,以便显示编辑器。透视图 factory 负责添加与编辑器相关的附加视图。根据与另一个部件的相对关系(顶部、底部、左边和右边),将视图添加到布局中。还可为并非最初显示的项目添加占位符(空的空间)。

要组织相关视图并减少混乱,可以使用 IFolderLayout 来将视图分组到选项卡式文件夹中。例如,“资源”透视图将文件夹内的资源导航器放在工作台的左上角。占位符常用于文件夹布局。“资源”透视图为与资源导航器处于同一个文件夹中的书签视图定义占位符。如果用户显示书签视图,则它将与导航器出现在同一文件夹中,每个视图都有一个标记。

IPageLayout 还允许您定义透视图内可用的操作和快捷方式。

Copyright IBM Corp. and others 2000,2002.