Eclipse插件 - 如何获取最近编辑的编辑器

3

我正在编写一个Eclipse插件,向用户展示一个带有多个按钮的视图。当用户点击任何按钮时,我想将某些注释粘贴到编辑器窗口中,该窗口是用户当前正在工作并且光标位置指向的位置。

一旦用户点击按钮,编辑器窗口就不再具有焦点,以下代码将无法正常工作。

workbench.getActiveWorkbenchWindow().getActivePage().getActiveEditor()

我该如何检测用户单击按钮之前所在的编辑器窗口以及光标位置?
1个回答

5

使用 IPartListener 监听部件激活事件。

在视图初始化中设置监听器:

getSite().getPage().addPartListener(partListener);

(不要忘记在视图销毁时删除侦听器)。

除其他事项外,这将为您提供部分激活事件:

public void partActivated(IWorkbenchPart part)

如果partIEditorPart的一个实例,那么它就是正在激活的编辑器。因此,您只需要跟踪这个已激活的编辑器即可。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接