在 RCP 应用程序中禁用视图的关闭功能
Disable close function for a view in a RCP application
我有一个具有不同视角的 RCP 应用程序。从一个角度来看,有几个视图是这样定义的:
p_layout.addStandaloneView(View1.ID, true, IPageLayout.LEFT, lf_ratioView1, p_layout.getEditorArea());
p_layout.addStandaloneView(MyView.ID, false, IPageLayout.TOP, lf_ratioMyView, View1.ID);
final IFolderLayout lf_detailsFolder = p_layout.createFolder("Details", IPageLayout.RIGHT, lf_ratioDetailsView, View1.ID);
lf_detailsFolder.addPlaceholder(DetailsView.ID);
lf_detailsFolder.addPlaceholder(View2.ID);
lf_detailsFolder.addPlaceholder(View3.ID + ":*");
lf_detailsFolder.addView(View4.ID);
p_layout.addStandaloneView(View 5.ID, true, IPageLayout.BOTTOM, lf_ratioView5, "Details");
p_layout.addStandaloneView(View6.ID, false, IPageLayout.BOTTOM, lf_ratioView6, View5.ID);
其中 p_layout 是一个 IPageLayout 对象。
按不同的按钮可以关闭和打开这些视图。
我想禁用 FolderLayout 中视图的关闭选项:DetailsView、View2、View3 和 View 4,以便用户只能使用这些按钮关闭它们。
我尝试将 plugin.xml 中视图扩展点的 closable 属性设置为 true,但没有成功。
我也试过代码:
p_layout.getViewLayout(DetailsView.ID).setCloseable(false);
p_layout.getViewLayout(View2.ID).setCloseable(false);
p_layout.getViewLayout(View3.ID).setCloseable(false);
p_layout.getViewLayout(View24.ID).setCloseable(false);
也没用。
RCP 应用程序是从 Eclipse Mars 构建的。
显然,我不想关闭的每个视图的方法 setCloseable(false)
是正确答案。
我在启动应用程序时启用了 "clean the workspace" 属性,这样功能才能生效。
我有一个具有不同视角的 RCP 应用程序。从一个角度来看,有几个视图是这样定义的:
p_layout.addStandaloneView(View1.ID, true, IPageLayout.LEFT, lf_ratioView1, p_layout.getEditorArea());
p_layout.addStandaloneView(MyView.ID, false, IPageLayout.TOP, lf_ratioMyView, View1.ID);
final IFolderLayout lf_detailsFolder = p_layout.createFolder("Details", IPageLayout.RIGHT, lf_ratioDetailsView, View1.ID);
lf_detailsFolder.addPlaceholder(DetailsView.ID);
lf_detailsFolder.addPlaceholder(View2.ID);
lf_detailsFolder.addPlaceholder(View3.ID + ":*");
lf_detailsFolder.addView(View4.ID);
p_layout.addStandaloneView(View 5.ID, true, IPageLayout.BOTTOM, lf_ratioView5, "Details");
p_layout.addStandaloneView(View6.ID, false, IPageLayout.BOTTOM, lf_ratioView6, View5.ID);
其中 p_layout 是一个 IPageLayout 对象。 按不同的按钮可以关闭和打开这些视图。
我想禁用 FolderLayout 中视图的关闭选项:DetailsView、View2、View3 和 View 4,以便用户只能使用这些按钮关闭它们。
我尝试将 plugin.xml 中视图扩展点的 closable 属性设置为 true,但没有成功。
我也试过代码:
p_layout.getViewLayout(DetailsView.ID).setCloseable(false);
p_layout.getViewLayout(View2.ID).setCloseable(false);
p_layout.getViewLayout(View3.ID).setCloseable(false);
p_layout.getViewLayout(View24.ID).setCloseable(false);
也没用。
RCP 应用程序是从 Eclipse Mars 构建的。
显然,我不想关闭的每个视图的方法 setCloseable(false)
是正确答案。
我在启动应用程序时启用了 "clean the workspace" 属性,这样功能才能生效。