Eclipse 插件中标记的悬停文本

2023-12-03

我有一个带有问题标记的自定义编辑器。 标记在“问题”视图中正确显示,包含图标、位置和文本,并且问题图标在编辑器的左边距中正确显示。

我希望将鼠标悬停在边距中的问题标记图标上时在弹出窗口中显示相同的错误消息文本,就像在 Java 编辑器中一样。现在没有弹出窗口。

有没有一种简单的方法可以实现这一目标?


Answer :

好吧,看起来该功能并未内置在标记系统中。似乎已经提交了补丁,因此可能会在以后的版本中添加它,但在那之前它也很容易手动创建。

  1. 创建一个类来实现IAnnotationHover并实施getHoverInfo().
  2. 返回班级getAnnotationHover()方法中的SourceViewerConfiguration.
  3. In getHoverInfo()方法,调用ISourceViewer.getAnnotationModel().getAnnotationIterator()获取所有标记。
  4. 选择与行号对应的标记,并返回标记文本。

在扩展 org.eclipse.jface.text.source.SourceViewerConfiguration 的类中,只需包含以下内容:

@Override
public IAnnotationHover getAnnotationHover(ISourceViewer sourceViewer) {
    return new DefaultAnnotationHover();
}

这包括文本编辑器页边距中问题标记的悬停文本中一行的所有标记的文本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Eclipse 插件中标记的悬停文本 的相关文章

随机推荐

  • SpriteKit 缺少线性变换矩阵

    有谁知道如何改造 rotate scale skew 使用变换矩阵的 SpriteKit 节点 在 Spritekit API 中找不到对此的任何支持 正如所提到的雾大师 您可以将 SKEffectNode 与 CIFilter 一起使用
  • QGLWidget 在 Windows 7 中显示为黑色

    我使用 Visual Studio 2010 在 Windows XP Qt 4 7 2 中编写并测试了一些代码 然后在另一台安装了 Windows 7 的计算机上进行了尝试 该程序打开一个 QDialog 并创建一个 QGLWidget
  • 如何在 JavaScript 中获取日期时间?

    如何在 JavaScript 中获取格式为 31 12 2010 03 55 AM 的日期时间 从语义上讲 您可能正在寻找一句话 new Date toLocaleString 它格式化用户区域设置中的日期 如果您确实正在寻找格式化日期的特
  • 更改php中的日期时间格式

    这是格式 d m Y H i s 15 11 2008 7 16 09 我想更改为这种格式 Y m d H i s 2008 11 15 07 16 09 尝试了 strtotime 函数 但它将 m 视为 d 将 d 视为 m 帮助 ph
  • VBA For循环不退出

    我正在循环遍历表的行并在不满足某些条件时删除行 由于某种原因 我的 for 循环即使完成也不会退出 我究竟做错了什么 lastr Range a2 End xlDown Row For r 2 To lastr If Cells r 1 V
  • 如何在 Windows 上强制 printf 输出 [-]inf 或 [-]infinity?

    C99标准说 表示无穷大的双参数被转换为以下之一 styles inf 或 infinity 实现的样式是 实现定义的 第 278 页第 7 19 6 1 节 不幸的是在 Windows 上 printf f n 1 0f 0 0f 产生
  • 如何断言 Iterable 包含具有特定属性的元素?

    假设我想使用以下签名对方法进行单元测试 List
  • 无法通过 Java 6 中的 jconsole 连接到 Tomcat MBean 服务器

    我用的是vista机器 我使用以下选项启动了 tomcat 5 5 27 CATALINA OPTS Dcom sun management jmxremote port 9003 Dcom sun management jmxremote
  • 媒体播放器混响不起作用

    我试图通过在输出混合 音频会话 0 上创建混响来将混响效果应用于媒体播放器 并且我使用此代码 public void reverb1 View v PresetReverb mReverb new PresetReverb 0 0 lt l
  • 在 Node.js 中找不到模块

    我有以下目录结构 app test server js app js 我尝试调用 app js 中从 server js 导出的函数 我这样做 var server require test server 但得到错误 Error Canno
  • 十六进制常数

    我想根据其十六进制表示形式声明一个整数参数 两者有什么区别 INTEGER kind int32 PARAMETER a Z FFFFFFFF INTEGER kind int32 PARAMETER b int Z FFFFFFFF ki
  • Vuex 存储中未定义 ReferenceError 状态

    My vuex商店看起来像这样 但打电话时addCustomer I get ReferenceError state is not defined import Vue from vue import Vuex from vuex Vue
  • 在异步函数中返回等待值就是返回一个承诺

    在 Javascript 中 我试图从异步函数返回等待结果 看来 如果我在异步函数中使用该结果 那么一切都会正常工作 它会被视为resolve 参数 并且一切都很好 但是 如果我尝试返回结果 即使存在等待语句 它也会被视为回调 例如 在异步
  • 如何在非 unicode Delphi 版本中构造带有变音符号的 WideString?

    我正在尝试构建一个 测试 WideString of U 00E1 带尖音符的小写拉丁文 A 但使用它的分解形式 拉丁文小写字母 A U 0061 结合尖锐口音 U 0301 所以我有代码片段 var test WideString beg
  • 通过python程序访问网络文件夹

    只是我正在做的事情的简要概述 我正在尝试在网络目录中使用 python 自动执行一些 pdf 合并例程 其中涉及在特定网络位置复制 删除和创建文件 如果我的语言不太准确 请道歉 我正在 Windows 7 上使用 python 3 6 进行
  • 如何在 Matlab 中使用 RESTful Web 服务

    我有一个数据提供程序 它提供基于 Web 的 RESTful 界面 我正在尝试将这些数据导入 Matlab 界面相对简单 但我仍在寻找有这方面经验的人 该服务本身不提供 SOAP WSDL 但 Matlab 可以轻松使用 供应商有一个 适配
  • 如何在需要时保存和检索视图

    我的目标是使会话大小尽可能小 为什么 这是另一个话题 我所拥有的是 faces config xml 中声明的 Phase 侦听器
  • Kindle Fire 自定义软键菜单

    有谁知道如何从软键菜单中删除或隐藏菜单和搜索按钮 我想完成 Pulse 应用程序 隐藏搜索按钮 或 Kindle Fire 帮助和反馈应用程序 隐藏搜索按钮和菜单按钮 中正在执行的操作 我很好奇他们是否真的修改了软键菜单 或者使应用程序全屏
  • 如何在路径中编写带有变量的vba

    这是我在这个网站上发表的第二篇文章 我对 VBA 还比较陌生 我今天的问题是 如何将单元格值添加到路径字符串以指定我想要保存工作簿的文件夹 Dim Path As String Dim FileName1 As String Dim Fil
  • Eclipse 插件中标记的悬停文本

    我有一个带有问题标记的自定义编辑器 标记在 问题 视图中正确显示 包含图标 位置和文本 并且问题图标在编辑器的左边距中正确显示 我希望将鼠标悬停在边距中的问题标记图标上时在弹出窗口中显示相同的错误消息文本 就像在 Java 编辑器中一样 现