Make Eclipse RCP Intro part of a perspective

大城市里の小女人 提交于 2019-12-10 19:46:33

问题


For a product we are creating, we want to be able to have the welcome screen display in a perspective (which we are calling "Start Here"). The intro is the only thing that needs to be in that perspective, however, when I try to add our intro view to the perspective, it says that the view already exists in the layout.

I have tried programmatically closing the intro, messing around with standby mode etc but I cant get it working.

The intro is an XHTML one and we use internal Eclipse "action links" (e.g. http://org.eclipse...?runAction etc) extensively (hence the reason that we need to use the intro framework.

Does anyone have any ideas as to how I could get it added to a perspective, or at the very least get the intro fully maximised when you select a specific perspective (using the "showIntro" method results in it displaying oddly, bunched to one side).

Thanks!


回答1:


Intro view is a sticky view, so its placeholder is created by default to every perspective, to the right of editor area. There's no public API to remove a placeholder once it is created and when you try to create one you get the error that it already exists.

You can maximize Intro view like this:

IWorkbenchPage page =
    PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
page.setPartState(page.findViewReference("org.eclipse.ui.internal.introview"),
    IWorkbenchPage.STATE_MAXIMIZED);

This should probably be done in IPerspectiveListener.perspectiveChanged() rather than in perspective factory.




回答2:


Instead of adding the view to the perspective, call IIntroManager.showIntro() or WorkbenchWindowAdvisor.openIntro()



来源:https://stackoverflow.com/questions/3667765/make-eclipse-rcp-intro-part-of-a-perspective

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!