Viewのcloseの取得

前日、disposeのoverwriteという方法を紹介したが、間違ったやりかただった。

どうやら、Pageに、IPartListener2を追加して、partClosedを拾う方がいいようだ。
listenerの追加位置は、どこでやるかは、難しいところだが、WorkbenchAdvisorのpostWindowOpenはどうかな?

いかな感じになります。

public class SpeechWorkbenchAdvisor extends WorkbenchAdvisor {
public void postWindowOpen(IWorkbenchWindowConfigurer configurer) {
configurer.getWindow().getActivePage().addPartListener(new MyPartListener2());
}
}

public class MyPartListener2 implements IPartListener2{
public void partClosed(IWorkbenchPartReference partRef) {
log.info("part-closed:"+partRef.getId());
}
}