在Eclipse Text Editor中光标位置更改时收到通知

时间:2012-03-20 22:32:09

标签: eclipse eclipse-plugin selectionchanged

我正在开发一个eclipse插件,我想在上下文菜单中添加一些操作。但实际上我想根据编辑器中的文本选择预先准备结果,并在选择菜单项时显示它们。 我按照那篇文章http://www.eclipse.org/articles/Article-WorkbenchSelections/article.html - 所有接口(ISelectionListenerISelectionChangedListener等)都允许处理SelectionChanged事件,但只有当选择的长度也发生变化时编辑器才会发生变化 - 所以编辑器中的简单单击不会触发事件,但我想将单词(例如)作为选择,如果光标位于单词内并且长度为0。

所以问题是 - 对于零长度值变化来追踪光标位置/偏移/选择的最简单的解决方案是什么?

2 个答案:

答案 0 :(得分:1)

在这种情况下,您还必须使用KeyListener和MouseListener。例如,看看org.eclipse.jface.text.PaintManager,它会监听所有这些事件。

答案 1 :(得分:0)

如果您要延长TextEditor,则可以覆盖handleCursorPositionChanged()方法来触发事件,并使用getCursorPosition()将光标位置设为String