如何在Eclipse插件开发中获取活动透视图名称

时间:2012-03-23 11:02:41

标签: eclipse eclipse-plugin eclipse-rcp

我是Eclipse插件开发的新手。我想使用Java获取(访问)活动透视图名称。我该怎么做?

3 个答案:

答案 0 :(得分:12)

IWorkbench wb = PlatformUI.getWorkbench();

IWorkbenchWindow win = wb.getActiveWorkbenchWindow();

IWorkbenchPage page = win.getActivePage();

IPerspectiveDescriptor perspective = page.getPerspective();

String label = perspective.getLabel();

您还可以使用IPerspectiveDescriptor上的方法访问透视图的描述和ID。

答案 1 :(得分:1)

查看"Using Perspectives in the Eclipse UI“。

如果您有权访问IWorkbenchWindow类型的对象:

window.getActivePage().getPerspective().getLabel()

答案 2 :(得分:1)

新的E4方式依赖于EModelService

简单地为:

import javax.inject.Inject;
import org.eclipse.e4.ui.model.application.ui.advanced.MPerspective;
import org.eclipse.e4.ui.model.application.ui.basic.MWindow;
import org.eclipse.e4.ui.workbench.modeling.EModelService;

@Inject EModelService modelService;    
@Inject MWindow window;

MPerspective p =  modelService.getActivePerspective(window);
System.out.println("ACTIVE PERSPECTIVE: " + p.getLabel());