如何在下拉菜单中显示项目的标签

时间:2013-06-21 08:45:09

标签: eclipse eclipse-rcp

在Eclipse RCP应用程序中,我有一个自定义视图,并在该视图的工具栏中提供了一个下拉命令:

 <menuContribution
            allPopups="false"
            locationURI="toolbar:test.ui.views.MyView">
         <command
               commandId="test.ui.commands.Command1"
               id="test.ui.commands.Command1.dropdown"
               label="Command 1"
               style="pulldown">
         </command>
      </menuContribution>

然后,我在Command1下拉菜单中提供了一些其他命令,如下所示:

  <menuContribution
        allPopups="false"
        locationURI="menu:test.ui.commands.Command1.dropdown">
     <command
           commandId="test.ui.commands.Command2"
           label="Command 2"
           style="push">
     </command>
     <command
           commandId="test.ui.commands.Command3"
           label="Command 3"
           style="push">
     </command>
  </menuContribution>

到目前为止一切正常,我可以看到视图工具栏上的Command1标签,当我点击它旁边的下拉符号时,菜单会显示Command2和Command3命令 - 正如预期的那样。

问题:

当我单击Command2项时,我想要实现的是在下拉菜单中显示Command2的标签,而不是下拉Command1标签。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

您应该能够让Command 1的处理程序实现org.eclipse.ui.commands.IElementUpdater并在适当的时候调用org.eclipse.ui.commands.ICommandService.refreshElements(String, Map)

在您的IElementUpdater中,您有机会为UIElement(主要工具项)设置标签。