07/02/11 19:06:02
>>644
レスどうもです。
適当なviewのプラグインを作ってその中のcreatePartControlに以下のコードを書いて
全ファイルのフルパスを取ることができました。
ホントはIPathEditorInputのところをIFileEditorInputにしてgetFileすればIFileから
eclipse上のパスも取れるんですよね?
うちの環境(eclipse3.2)ではなぜかIFileEditorInputなんて知らんと言われてしまいます。
getViewSite().getWorkbenchWindow().addPageListener(new IPageListener() {
public void pageClosed(IWorkbenchPage page) {
IEditorReference[] editorReferences = page.getEditorReferences();
for (int i = 0; i < editorReferences.length; i++) {
try {
IEditorInput editorInput = editorReferences[i].getEditorInput();
if (editorInput instanceof IPathEditorInput) {
System.out.println(((IPathEditorInput)editorInput).getPath().toString());
}
} catch (PartInitException e) {
}
}
}
...
});
なぜそんなこと、というのは開いていたファイルにそれぞれ属性のようなものを持たせてあり、
次回起動したときにその属性を再設定するためです。属性は別途ファイルに保存するという仕組みです。