当 Eclipse 中打开新编辑器时,如何收到通知?
我有一个视图希望收到有关所有当前打开的编辑器的通知。 我在哪里可以添加监听器来实现此目的?
我期望 WorkbenchPage 或 EditorManager 有一些合适的侦听器注册表,但我找不到它。
I have a view which would like to be notified about all the currently opened editors. Where can I add a listener to achieve this?
I was expecting WorkbenchPage or EditorManager to have some appropriate listener registry, but I couldn't find it.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您的视图是否使用
org.eclipse.ui.IPartListener2
?这就是使用这个 EditorListener 的原因,它的工作是对给定视图对编辑器事件(包括打开和关闭)做出反应
现在,如果您的
ViewPart
直接实现IPartListener2
,它可以将自己注册到各种编辑器
,像这样BytecodeReferenceView
Does your view uses a
org.eclipse.ui.IPartListener2
?That is what is using this EditorListener, whose job is to react, for a given view, to Editor events (including open and close)
Now if your
ViewPart
directly implements anIPartListener2
, it can register itself to the variousEditors
, like thisBytecodeReferenceView
我认为你走在正确的道路上。 您需要收听 IWorkbenchPage IPartService 事件:
I think you're on the right track. You need to listen to the IWorkbenchPage IPartService events: