有人能说出下面的代码出了什么问题吗。它不起作用。当透视图发生变化时,它应该隐藏相应的菜单项。
<extension point="org.eclipse.ui.menus">
<menuContribution locationURI="menu:org.eclipse.search.menu?after=xxxGroup">
<command commandId="com.xxx.udt.ui.xxxOpenFileSearchPage"
label="XXFS"
mnemonic="%XXXOpenFileSearchPage.mnemonic"
icon="icons/full/search/XXXSearchDialog.png"
helpContextId="file_search_action_context">
<visibleWhen
checkEnabled="false">
<with
variable="com.XXX.udt.ui.serviceprovider.ShowActions">
<equals
value="showAction">
</equals>
</with>
</visibleWhen>
</command>
</menuContribution>
</extension>
<extension
point="org.eclipse.ui.handlers">
<handler
commandId="com.XXX.udt.ui.MCPOpenFileSearchPage"
class="com.XXX.udt.ui.MCPOpenFileSearchPage">
</handler>
</extension>
检查当前透视图的visibleWhen
表达式类似于:
<visibleWhen>
<with
variable="activeWorkbenchWindow.currentPerspective">
<equals
value="org.eclipse.pde.ui.PDEPerspective">
</equals>
</with>
</visibleWhen>
这个特殊的表达式正在测试插件开发透视图。
请参阅https://wiki.eclipse.org/Command_Core_Expressions以清楚地使用visible when和enable when条件。。