如何从RCP中的布局中删除视图

时间:2016-07-08 09:36:56

标签: eclipse views rcp

我有一个应用程序,我有不同的视角。在一个视角我想删除已添加到布局的某些视图。 以下是我的代码:

这是我想要重置视角

时调用的片段
public void createInitialLayout(IPageLayout layout) {
        layout.setEditorAreaVisible(false);
        layout.setFixed(false);

        //I am dividing the whole layout into 4 parts.One is top left,top right,bottom left,bottom right.

        IFolderLayout topLeft = layout.createFolder(TOP_LEFT_ID, IPageLayout.LEFT, 0.25f, IPageLayout.ID_EDITOR_AREA);
        topLeft.addView(SpaceView.ID);
        topLeft.addView(RepositoryView.ID);

        IFolderLayout topRight = layout.createFolder(TOP_RIGHT_ID, IPageLayout.TOP, 0.25f, IPageLayout.ID_EDITOR_AREA);
        topRight.addView(ModuleView.ID);
        topRight.addView(ProjectChangeLogView.ID);
        topRight.addView(SearchViewPart.ID);

        IFolderLayout bottomLeft = layout.createFolder(BOTTOM_LEFT_ID, IPageLayout.BOTTOM, 0.70f, TOP_LEFT_ID);
        bottomLeft.addView(QueueView.ID);

        IFolderLayout bottomRight = layout.createFolder(BOTTOM_RIGHT_ID, IPageLayout.BOTTOM, 0.55f, TOP_RIGHT_ID);
        bottomRight.addView(Objects.ID);

    }

现在在视角重置之后,我想从布局中删除某些视图(例如对象视图)。这里我没有为bottomRight.delelte / removeView等获取任何选项。那么我怎样才能实现相同的目标?

1 个答案:

答案 0 :(得分:1)

透视工厂仅在首次使用透视图和重置透视图时使用。它不能用于改变开放视角的布局。

我不知道移动观点位置的简单方法。您可能需要通过以与拖放代码(MPart)类似的方式将MPartStack移动到新的org.eclipse.e4.ui.workbench.addons.dndaddon.DnDManager来修改e4应用程序模型