控制工具栏的可见性

Control Visibility of Toolbar

我为默认菜单和工具栏做出了贡献,但现在想让某些用户看不到菜单的某些部分。

在菜单中,这个有效:

 <menuContribution allPopups="false" locationURI="menu:org.eclipse.ui.main.menu">
      <menu id="menu.project" label="%menu.project">
           <visibleWhen checkEnabled="false">
                <test property="currentUser.notUserGroup" value="ADMINISTRATOR" />
           </visibleWhen>
      </menu>
 </menuContribution>

对于工具栏,plugin.xml 的编辑器让我选择相同的结构:

 <menuContribution allPopups="false" locationURI="toolbar:org.eclipse.ui.main.toolbar">
      <toolbar id="toolbar.project">
           <visibleWhen checkEnabled="false">
                <test property="currentUser.notUserGroup" value="ADMINISTRATOR" />
           </visibleWhen>
      </toolbar>
</menuContribution>

然而,那是行不通的。贡献给 toolbar.project 的项目仍然可见。

如何控制工具栏的可见性?

这是一个已知问题:请参阅 Eclipse bug 201589

有一个 patch 附在错误上,不幸的是它不完整而且很旧(Eclipse 之前 4.x)。