繁体   English   中英

菜单eclipse插件中的命令激活

[英]Command activation in menu eclipse plugin

我想在“视图菜单”中创建一个菜单,以使用户可以通过选择菜单项之一来选择如何显示视图。

因此,我确实添加了一个有助于视图的菜单,并在其中添加了两个样式为“无线电”的命令,我将两个命令都指向了相同的命令名称,并在其中添加了两个不同的值。 我声明了一个新的命令,一个新的处理程序,并且我的处理程序工作正常,因为我确实将sysout设置为“ Handler Executed”,并且每次在视图中打开菜单时,都会执行“ isEnabled”功能。

我的问题是,我无法单击我的收音机按钮,也不知道为什么。 我的plugin.xml中没有警告,我不知道它拒绝工作的原因。

命令proc“ isEnabled”,但无法选择条目

如果您能帮助我,请先谢谢您,我感觉有点卡在这里:/

这是我的plugin.xml。 扩展菜单:

<menuContribution
            allPopups="false"
            locationURI="menu:fr.sumo.ui.view.MyView">
         <command
               commandId="fr.sumo.ui.handlers.ShowTreeViewerHandler"
               label="Command1"
               style="push">
            <parameter
                  name="fr.sumo.ui.commands.ShowTreeViewerHandler"
                  value="RuleTreeViewer">
            </parameter>
         </command>
         <command
               commandId="fr.sumo.ui.handlers.ShowTreeViewerHandler"
               label="Command2"
               style="push">
            <parameter
                  name="fr.sumo.ui.commands.ShowTreeViewerHandler"
                  value="FileTreeViewer">
            </parameter>
         </command>
      </menuContribution>

命令扩展:

<command
        id="fr.sumo.ui.handlers.ShowTreeViewerHandler"
        name="Show Rule TreeViewer">
     <commandParameter
           id="fr.sumo.ui.commands.ShowTreeViewerHandler"
           name="fr.sumo.ui.commands.ShowTreeViewerHandler">
     </commandParameter>
  </command>

扩展处理程序:

 <handler
        class="fr.sumo.ui.handler.ShowRuleTreeViewerHandler"
        commandId="fr.sumo.ui.handlers.ShowTreeViewerHandler">
 </handler>

所以我终于找到了答案,这是显而易见的。 在我的处理程序类中,方法isEnabled()返回false ,这是我的项目不可点击的原因。 只是必须将其变为真实。

@Override
public boolean isEnabled() {
    System.out.println("isEnabled !");
    return false;
}

谢谢btw ppl,谁可能尝试在我的plugin.xml中查找问题^^

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM