我在Team菜单中创建了一个新的子菜单,作为org.eclipse.ui.menus的扩展。问题是这个子菜单也出现在扩展org.eclipse.ui.menus的其他插件中。
这些扩展程序的ID都不同,但仍显示菜单。
如何让菜单仅针对某些部分显示?
编辑:菜单定义:
<plugin>
<extension point="org.eclipse.ui.commands">
<command
defaultHandler="DefaultHandler"
id="menuItem.command"
name="Menu Item"/>
</extension>
<extension point="org.eclipse.ui.menus">
<menuContribution allPopups="true" locationURI="popup:team.main?after=group3">
<command
commandId="menuItem.command"
icon="icons/icon.png"
id="menuItem.menu"
style="push"/>
</menuContribution>
</extension>
</plugin>
编辑:插件的菜单定义,其中也出现上述定义
<extension
point="org.eclipse.ui.menus">
<menuContribution
allPopups="true"
locationURI="popup:com.comp.view1">
<menu
label="Open menu 1">
<dynamic
class="com.comp.views.OpenMenu1"
id="com.comp.view">
</dynamic>
</menu>
<menu
label="Open menu 2">
<dynamic
class="com.comp.views.OpenMenu2"
id="com.comp.view">
</dynamic>
</menu>
</menuContribution>
答案 0 :(得分:0)
请勿在{{1}}上指定allPopups="true"
。要么完全不使用它,要么使用默认值menuContribution
。