我使用默认的邮件客户端模板创建了新的Eclipse IDE(插件项目,Eclipse Kepler,rel.1)。
首次运行应用程序后,透视图会被存储并记住(某处?),而对Perspective.java的任何更改都没有任何影响!即使我从Perspective.java中删除 createInitialLayout(IPageLayout layout)的内容,也会再次恢复所有内容。
BTW:将此代码添加到ApplicationWorkbenchAdvisor.java没有帮助:
@Override
public void initialize(IWorkbenchConfigurer configurer) {
super.initialize(configurer);
configurer.setSaveAndRestore(false);
}
如何强制应用不要重新布局?
答案 0 :(得分:1)
您可以致电IWorkbenchPage.resetPerspective()
重新初始化视角,也许在WorkbenchWindowAdvisor.postWindowRestore()
方法中。
答案 1 :(得分:0)
谢谢。我已将以下代码添加到菜单中。现在我可以随时重置透视图。
public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
private IWorkbenchAction resetPerspectiveAction;
@Override
protected void makeActions(IWorkbenchWindow window) {
// ...
// create and register the actions
resetPerspectiveAction = ActionFactory.RESET_PERSPECTIVE.create(window);
register(resetPerspectiveAction);
// ...
}
@Override
protected void fillMenuBar(IMenuManager menuBar) {
// ...
// create and fill the window menu
MenuManager windowMenu = new MenuManager("&Window", WorkbenchActionConstants.M_WINDOW);
menuBar.add(windowMenu);
windowMenu.add(resetPerspectiveAction);
// ...
}
}