我使用项目性质RCPProjectNature_1和RCPProjectNature_2来使用RCP。
我想仅在具有自然RCPProjectNature_1的项目打开且一旦使用RCPProjectNature_1的项目关闭工具栏菜单时才会激活某些工具栏菜单。
例如 我有日食项目
应用程序具有有效的工具栏菜单,只有在打开了RCPProjectNature_1的任何项目时才应启用该菜单。否则它应该变灰了
我如何在plugin.xml中编写表达式?
答案 0 :(得分:3)
要测试单个项目,请使用<test>
属性上的org.eclipse.core.resources.projectNature
。
来自org.eclipse.jdt.ui插件的示例:
<enabledWhen>
<adapt type="org.eclipse.core.resources.IProject">
<test property="org.eclipse.core.resources.projectNature"
value="org.eclipse.jdt.core.javanature"/>
</adapt>
</enabledWhen>
何时测试具有Java特性的Project对象。
更新
没有办法在正常的命令表达式中迭代所有项目,所以你
必须使用org.eclipse.core.expressions.propertyTesters
扩展点编写自己的属性测试器。此属性测试人员可以检查工作区项目(IProject
对象)。