我需要在我的插件视图之一中添加一个监听器。当 Eclipse 的 CEditor 中发生鼠标或键事件时,我需要更新视图。我已经做到了:
((StyledText)((AbstractTextEditor)activeEditor).getAdapter(Control.class)).addKeyListener(l);
但是当我在编辑器中更改为不同的文件时,侦听器不起作用。有任何想法吗?
我需要在我的插件视图之一中添加一个监听器。当 Eclipse 的 CEditor 中发生鼠标或键事件时,我需要更新视图。我已经做到了:
((StyledText)((AbstractTextEditor)activeEditor).getAdapter(Control.class)).addKeyListener(l);
但是当我在编辑器中更改为不同的文件时,侦听器不起作用。有任何想法吗?
已解决:我放弃了键/鼠标侦听器的想法,只是在我的 Eclipse 页面中添加了一个 SelectionListener。然后创建了一个自定义的 selectionListener,它只在选择在 CEditor 中时才响应。
让我的视图类实现 ISelectionListener
getViewSite().getPage().addSelectionListener(this);
@Override
public void selectionChanged(IWorkbenchPart part, ISelection selection) {
if(part.getClass() == CEditor.class){
//Do what I needed
}
}
这使得它只响应我的 CEditor 中的选择更改。