如何从ONEditorAction代表获取资源

时间:2010-02-17 01:59:01

标签: delegates selection markers eclipse-plugin compilationunit

我写了一个IEditorActionDelegate来从CompilationUnitEditor上下文菜单中触发。从那里我想在所选文本的起始行创建一个标记。我有一个ITextSelection和一个IEditorPart对象。如何从这些中获取IResource,以便我可以调用resource.createMarker()?

由于

1 个答案:

答案 0 :(得分:1)

您可以看看Eclipse如何在其org.eclipse.jdt.internal.ui.javaeditor.EditorUtility类中执行类似操作。

你可以看到它(line 222 and following):

final IEditorInput  input= editor.getEditorInput();
marker= ((IFileEditorInput)input).getFile().createMarker(IMarker.TEXT);
marker.setAttribute(IMarker.CHAR_START, offset);
marker.setAttribute(IMarker.CHAR_END, offset + length);

使用offsetlength,您应该可以从TextSelection推断。