我正在实现一个简单的eclipse通知插件,如果发生某种性质的事情,应该更改工具栏中的图标。我对org.eclipse.ui.menus进行了扩展,图标显示得非常好。
我想在Activator中启动一个轮询线程,让它每隔几分钟进行轮询并相应地更改图标。
线程必须能够访问ToolItem才能调用setImage()。如何访问ToolItem以将其传递给Thread?
干杯
答案 0 :(得分:2)
您的处理程序必须实现org.eclipse.ui.commands.IElementUpdater
。它可以调用org.eclipse.ui.menus.UIElement.setIcon(ImageDescriptor)
。当您需要更新图像时,可以调用org.eclipse.ui.commands.ICommandService.refreshElements(String, Map)
来触发刷新和对处理程序的调用。