如何将快速查看添加到我的Eclipse RCP应用程序?
IFolderLayout ViewLayout1 = layout.createFolder ( "ViewLayout1",
IPageLayout.BOTTOM,
0.50f, initalView.ID);
OpenViewAction ov = new OpenViewAction (window, "label", secondview.ID);
ov.run ();
org.eclipse.ui.views.showView
”和参数“org.eclipse.ui.views.showView.makeFast
”,可以以编程方式显示和最小化快速视图。
请参见Eclipse RCP:通过标准命令org.eclipse.ui.handlers.ShowViewHandler
打开视图:
请参见命令的参数以获取一些示例Eclipse提供了标准命令
org.eclipse.ui.views.showView
,可打开任意视图。
默认处理程序是org.eclipse.ui.handlers.ShowViewHandler
。该处理程序是如何添加带有参数的自定义命令的良好示例。它具有两个参数:
- 第一个参数具有ID
org.eclipse.ui.views.showView.viewId
,并标识应打开的视图ID,- 下一个参数具有ID
org.eclipse.ui.views.showView.makeFast
,并确定是否将视图作为快速视图打开。如果没有参数,该命令将允许用户选择要打开的视图。
让我们看看一个实际的示例:“Show View”命令。该命令是通用的,可以显示任何视图。将视图ID作为参数提供给命令:
<command
name="%command.showView.name"
description="%command.showView.description"
categoryId="org.eclipse.ui.category.views"
id="org.eclipse.ui.views.showView"
defaultHandler="org.eclipse.ui.handlers.ShowViewHandler">
<commandParameter
id="org.eclipse.ui.views.showView.viewId"
name="%command.showView.viewIdParameter"
values="org.eclipse.ui.internal.registry.ViewParameterValues" />
<commandParameter
id="org.eclipse.ui.views.showView.makeFast"
name="%command.showView.makeFastParameter"
optional="true"/>
</command>
ViewParameterValues
给出。该类将遍历视图注册表并返回结果。WorkbenchAdvisor
的preWindowOpen()
方法调用WorkbenchWindowConfigurer.setShowFastViewBar(false)
来禁用快速视图。这不仅会隐藏快速视图栏,还会隐藏视图上的“快速视图”菜单项。在Eclipse RCP或RAP应用程序中添加快速视图的简单方法是先创建一个普通视图。在插件xml中,为该视图(我称其为fast.view)添加一个新的扩展,具有正确的属性。
<view
closable="true"
id="fast.view"
minimized="true"
ratio=".30f"
relationship="fast" <--- This attribute tells the view to be a fast view.
relative="other.view"
</view>
IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
configurer.setShowFastViewBars(true);