我在我的插件中创建了一个 eclipse menucontribution,它应该只在右键单击具有特定性质的项目时显示:
<menuContribution
allPopups="false"
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
<menu
icon="ico/full/obj16/icon-logo-composer.png"
id="com.dubture.composer.lib.ui.menu"
label="Composer">
<visibleWhen
checkEnabled="false">
<iterate>
<adapt
type="org.eclipse.core.resources.IProject">
<and>
<test
property="org.eclipse.core.resources.projectNature"
value="com.dubture.composer.core.composerNature">
</test>
</and>
</adapt>
</iterate>
</visibleWhen>
</menu>
</menuContribution>
visibleWhen 条件似乎仅在右键单击项目时才有效。该菜单仅在项目具有指定性质时显示。
但是,当我在其他地方右键单击时(例如在项目资源管理器中的某个空白区域或问题视图中),尽管adapt
有条件,菜单项仍会显示。
任何人都知道如何将其限制为仅右键单击项目?