Вы можете показать / скрыть область редактора, используя IWorkbenchPage
. setEditorAreaVisible()
.Вы можете сделать это, добавив IPerspectiveListener
к окну.
public void perspectiveChanged(IWorkbenchPage page,
IPerspectiveDescriptor perspective, String changeId) {
if (changeId == IWorkbenchPage.CHANGE_EDITOR_CLOSE) {
if (page.isEditorAreaVisible() && page.getEditorReferences().length == 0)
page.setEditorAreaVisible(false);
}
}
Хотя можно также уменьшить область редактора, используя метод setPartState()
страницы, это небыть сделано после того, как все редакторы закрыты.Хотя последняя ссылка на редактор доступна в обработчике событий закрытия редактора, ссылка на ILayoutContainer
уже удалена и поэтому не может использоваться для изменения состояния.