在Eclipse中打开特定位置的视图

时间:2016-05-18 11:39:05

标签: eclipse eclipse-plugin

我使用以下代码在基于Eclipse工作台的应用程序中打开一个视图:

HandlerUtil.getActiveWorkbenchWindow(paramExecutionEvent).getActivePage().showView("viewId");

我打开的这个视图是在外部插件中定义的,我对其源代码没有控制权。我只是通过了解view-id来打开视图。

当前视角在顶部有一个主要活动视图,在主视图下方打开的三个视图彼此相邻排列。

默认情况下,它会在主顶视图旁边打开,从而隐藏主视图。但我想在主视图下方打开此特定视图以及三个辅助视图,以便主顶视图仍然可见。

我无法访问任何这些视图的源代码或plugin.xml中的透视定义。我通过在插件中添加自定义菜单来打开此视图。

请帮助实现这一目标。提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以使用插件中的org.eclipse.ui.perspectiveExtensions扩展点在透视图中添加视图位置的定义。使用view元素定位视图。

例如:

<extension point="org.eclipse.ui.perspectiveExtensions"> 
    <perspectiveExtension 
        targetID="org.eclipse.ui.resourcePerspective"> 
        <view id="org.eclipse.jdt.ui.TypeHierarchy" 
            relative="org.eclipse.ui.views.ResourceNavigator" 
            relationship="left" 
            ratio="0.50"/> 
    </perspectiveExtension> 
</extension> 

这是org.eclipse.ui.resourcePerspective视角的补充。它定义了org.eclipse.jdt.ui.TypeHierarchy相对于org.eclipse.ui.views.ResourceNavigator视图的位置。