只有在选择文件夹时才会显示Eclipse插件弹出菜单

时间:2016-03-22 14:45:34

标签: java eclipse eclipse-plugin

我正在开发一个Eclipse插件,它将一些.java文件作为输入。 由于这些文件可能很多并且通常包含在一个包中,因此当我在Package Explorer中右键单击包含的包时,我想显示一个弹出菜单。 我能够在网上找到以下示例,仅在选择.java文件时显示弹出菜单:

...
<command 
   commandId = "AppAnalyzer.CodeToSrcML"
   label="Code to srcML"
   style="push"
   tooltip="Transforms all the files in the folder">
   <visibleWhen>
     <with variable="activeMenuSelection">
       <iterate ifEmpty="false">
         <adapt type="org.eclipse.core.resources.IResource">
           <test property="org.eclipse.core.resources.name" value="*.java" />
         </adapt>
       </iterate>
     </with>
   </visibleWhen>
 </command>
...

(我省略了文件中不太相关的部分,完整代码here

它有效,我试图修改它以满足我的需要,但我不知道我应该测试什么属性来检查所选资源是否是一个包。有人能指出我应该测试哪个属性吗?

1 个答案:

答案 0 :(得分:1)

而不是adapt使用类似的东西:

<or>
  <instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
  <instanceof value="org.eclipse.jdt.core.IPackageFragmentRoot"/>
</or>