Eclipse插件:如何在透视处于活动状态时显示菜单贡献?

时间:2010-11-24 15:53:19

标签: eclipse eclipse-plugin

我为Eclipse插件创建了一个菜单贡献。

我希望菜单只在插件视角处于活动状态时可见。

3 个答案:

答案 0 :(得分:4)

以下是我在开源项目中发现的内容,它对我有用:

<extension
      point="org.eclipse.ui.menus">
   <menuContribution
         locationURI="menu:org.eclipse.ui.main.menu?after=additions">
      <menu
            id="menu1"
            label="Menu 1">
         <visibleWhen checkEnabled="false">
            <with variable="activeWorkbenchWindow.activePerspective">
                <equals value="myperspective"/>
            </with>
         </visibleWhen>
         <dynamic class="MenuPopulationClass"
                id="MenuPopulation"/>
      </menu>
   </menuContribution>
</extension>

答案 1 :(得分:1)

我建议使用命令框架。

this tutorial可以帮助您

要限制命令的可见性,您应该检查参数。 5

答案 2 :(得分:0)

这是你需要做的一个简单的概述。

要限制顶级菜单的可见性,请通过“扩展点选择”对话框创建一个空的ActionSet

接下来,将visibleWhen表达式添加到plugin.xml中定义的顶级菜单项。右键单击菜单项并选择New - &gt; visibleWhen。右键单击visibleWhen元素并选择New - &gt;与

设置变量 - “activeContexts”

右键单击with元素并选择New - &gt;重复。选择新的iterate元素并修改其属性,以便任何匹配的元素都可以使表达式评估true

右键点击iterate元素,然后选择新建 - &gt;等于,然后修改value属性。

value =您的新ActionSet

最后,将顶级菜单项添加到ActionSet。