View Javadoc
1   package org.argeo.cms.e4.handlers;
2   
3   import java.util.List;
4   
5   import javax.inject.Inject;
6   import javax.inject.Named;
7   
8   import org.eclipse.e4.core.di.annotations.Execute;
9   import org.eclipse.e4.ui.model.application.MApplication;
10  import org.eclipse.e4.ui.model.application.ui.advanced.MPerspective;
11  import org.eclipse.e4.ui.workbench.modeling.EModelService;
12  import org.eclipse.e4.ui.workbench.modeling.EPartService;
13  
14  public class OpenPerspective {
15  	@Inject
16  	MApplication application;
17  	@Inject
18  	EPartService partService;
19  	@Inject
20  	EModelService modelService;
21  
22  	@Execute
23  	public void execute(@Named("perspectiveId") String perspectiveId) {
24  		List<MPerspective> perspectives = modelService.findElements(application, perspectiveId, MPerspective.class,
25  				null);
26  		if (perspectives.size() == 0)
27  			return;
28  		MPerspective perspective = perspectives.get(0);
29  		partService.switchPerspective(perspective);
30  	}
31  }