3

我在我的 RCP 应用程序中实现了一个自定义工具栏。我还使用org.eclipse.ui.menus扩展为自定义工具栏提供命令。

<extension
     point="org.eclipse.ui.menus">
  <menuContribution            
       locationURI="toolbar:com.my.custom.toolbar.identifier.toolbar">
     <command
           commandId="com.my.command.id"
           icon="icons/my_icon.png"
           style="toggle"
           tooltip="My Toggle Tooltip">
      </command>
   </menuContribution>
 </extension>

我已经编写了找到这些 IConfigurationElements 并将它们转换为 CommandContributionItems 的代码,我用它来将它们添加到我的自定义工具栏。

我有一些切换类型的工具栏项,我需要这些项来使用IElementUpdater命令处理程序实现的接口更新它们的 UI。

我还将这个命令贡献给一个标准的 Eclipse 菜单......比如“toolbar:org.eclipse.ui.main.toolbar”,它的切换状态在适当的时候通过 IElementUpdater 更新。

我的自定义工具栏中可能缺少将其连接到 IElementUpdater 的某些内容,但我不知道从哪里开始寻找使这项工作有效的方法。

4

1 回答 1

1

我使用了 IElementUpdater,但不适用于更新切换状态的情况,因为这应该通过与相应命令的连接来完成。但是,Eclipse 4 中存在一些问题,我已经在一篇博客文章中指出了这些问题。

您使用的是什么 Eclipse 变体?3.x 还是 4.x?4.x 中存在一个关于贡献及其命令状态同步的错误。

于 2013-04-22T11:32:49.510 回答