eclipse.ui.menus 的名称过滤器

ph0*_*h09 5 java eclipse plugins contextmenu menu

我有一个菜单贡献,通过org.eclipse.ui.menus扩展点实现。我想仅为特定文件扩展名(例如 *.pld)提供此菜单贡献,但我不知道如何使用“visibleWhen”来做到这一点。有任何想法吗?

---------------更新---------------- 到目前为止我的扩展点:

<extension
         point="org.eclipse.ui.menus">
      <menuContribution
            allPopups="false"
            locationURI="popup:org.eclipse.ui.navigator.ProjectExplorer#PopupMenu?before=additions">
         <command
               commandId="org.variability.configurator.commands.createPlc"
               icon="icons/PlcWizard.png"
               label="Create Product"
               style="push">
            <visibleWhen
                  checkEnabled="false">

            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
Run Code Online (Sandbox Code Playgroud)

干杯,菲尔

gre*_*449 4

您可以使用几个属性测试:

<test
   property="org.eclipse.core.resources.name"
   value="*.pld">
</test>
Run Code Online (Sandbox Code Playgroud)

<test
   property="org.eclipse.core.resources.extension"
   value="pld">
</test>
Run Code Online (Sandbox Code Playgroud)

您将需要迭代选择,以便完整可见的时间类似于:

<visibleWhen
      checkEnabled="false">
    <iterate
         ifEmpty="false"
         operator="or">
        <test
            property="org.eclipse.core.resources.name"
            value="*.pld">
        </test>
    </iterate>
</visibleWhen>
Run Code Online (Sandbox Code Playgroud)