RCP以编程方式可见(Java)

时间:2016-11-17 08:35:11

标签: java eclipse-rcp rcp

我在plugin.xml中有一个命令,它会添加一个新的菜单按钮。此按钮不应始终可见,因此我想从Java代码中检查复杂条件,以确定何时必须可见。

我知道有一个可见的和隐藏的可能性,但我不知道如何让Java类/方法做出决定。

1 个答案:

答案 0 :(得分:0)

对于此检查,使​​用命令的启用状态,该状态由IHandler.isEnabled()的返回值确定。

在plugin.xml中,命令对菜单的贡献必须是visibleWhen元素和checkEnabled =" true"。在Eclipse中,您可以右键单击命令贡献并在plugin.xml中添加可见的内容,如下所示:

     <command
           commandId="...">
        <visibleWhen
              checkEnabled="true">
        </visibleWhen>
     </command>

要启用/禁用命令,必须在命令处理程序中从org.eclipse.core.commands.IHandler(或从AbstractHandler覆盖)实现isEnabled()方法,如果应隐藏菜单项,则返回false。