如何在标尺上添加标记?

时间:2011-12-01 04:58:18

标签: java eclipse eclipse-plugin

我正在尝试在Eclipse中的垂直标尺上添加标记/图标。我使用了以下代码

     IEditorPart editor = PlatformUI.getWorkbench()
        .getActiveWorkbenchWindow().getActivePage().getActiveEditor();
     IFileEditorInput input = (IFileEditorInput)editor.getEditorInput() ;
     IFile file = input.getFile();
     IProject activeProject = file.getProject();
     IResource res = (IResource) activeProject;

     IMarker m;
     try {
            m = res.createMarker("com.examples.problem");
            m.setAttribute(IMarker.LOCATION, offset);
            m.setAttribute(IMarker.MESSAGE, "Hello");
            m.setAttribute(IMarker.LINE_NUMBER, offset);
      } catch (CoreException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }

其中offset是我想要标记的行号。 这段代码是标记但不在标尺上,而是在Console和Error日志旁边的Problems视图中。知道如何解决它吗?此外,如果有任何其他方式在标尺上添加切换/图标/标记,请提供建议。

2 个答案:

答案 0 :(得分:3)

您应该使用markerAnnotationSpecification扩展点。这用于使用指定的格式自动定义标记和编辑器注释之间的映射。

有关详细信息,请参阅我的博文:http://cubussapiens.hu/2011/05/custom-markers-and-annotations-the-bright-side-of-eclipse/

答案 1 :(得分:1)

您应该在编辑器中打开的文件上创建标记,而不是在项目上。