在Eclipse RCP中打开编辑器时,我可能希望根据编辑器的内容再次关闭它。
关闭刚刚打开的编辑器的最佳位置在哪里?是否有某种扩展点可用于此或者是否有办法避免打开编辑器?
编辑器本身通过扩展点org.eclipse.ui.editors
添加。
我试图将自己挂在编辑器的connect方法中,但我没有设法避免打开编辑器。
解决方案:感谢greg让我指向正确的方向!
我的编辑器现在实现了IPartListener,其实现方式如下:
@Override
public void partOpened(IWorkbenchPart part) {
if (part instanceof MyEditor) {
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeEditor(this, false);
}
}
打开后会关闭编辑器。
答案 0 :(得分:1)
您可以使用IPartListener
收听所有打开,关闭和激活的部分。
IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
window.getPartService().addPartListener(partListener);