J'ai une application RCP avec différentes perspectives. Dans une perspective, il y a plusieurs points de vue définis comme tels:Désactiver la fonction de fermeture pour une vue dans une 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);
Lorsque le p_layout est un objet IPageLayout. Ces vues sont fermées et ouvertes en appuyant sur différents boutons. Je souhaite désactiver l'option de fermeture pour les vues dans FolderLayout: DetailsView, View2, View3 et View 4 afin que l'utilisateur ne puisse les fermer qu'en utilisant ces boutons.
J'ai essayé en définissant l'attribut pouvant être fermé à partir du point d'extension d'affichage dans le fichier plugin.xml sur true, mais cela n'a pas fonctionné.
J'ai aussi essayé par code:
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);
également n'a pas fonctionné.
L'application RCP est construite à partir d'Eclipse Mars.
Il n'y a pas d'attribut 'pouvant être fermé' pour le point d'extension de vue. Si vous voulez dire que le point d'extension perspectiveExtension n'utilise pas cela pour faire référence à une vue que vous avez déjà définie dans la fabrique de perspective, cela conduira à un comportement indéfini. –