lyacct 2015-03-02 09:16 采纳率: 0%
浏览 822

eclispe的run菜单的run as...子菜单,怎么控制显示?

在eclispe的run菜单的run as...子菜单里面加上一个选项【Test Run】,就是加一个launch shortcut在里面,扩展了org.eclipse.debug.ui.launchShortcuts扩展点,【Test Run】菜单功能正常可用。
问题:
现在想选中项目右键时,通过自定义逻辑来控制【Test Run】是否显示,有大神知道怎么控制吗?
判断逻辑:获取选中项目中的pom.xml文件,解析文件中是否包含节点,有则显示【Test Run】按钮,没有则不显示

注:
1,了解过actionSet的扩展点接口中有 selectedChange()接口来做这个事情,但是我使用的扩展点是ILaunchShortcut
2,plugin.xml文件中也了解了下:配置中不支持自定义逻辑

感谢赐教

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-03 10:50
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    可以使用Action Set 来实现你想要的功能。首先你需要创建一个新的Action Set,并且在这个Action Set 中添加你的动作(也就是按钮)。

    然后,在你的插件的init阶段,你可以将这个Action Set 添加到你的启动快捷方式(例如Run As…)的菜单项上。

    以下是一个简单的示例:

    <action name="MyAction" class="com.example.MyAction">
        <menu name="Launch Shortcut" id="my_launch_shortcut"/>
    </action>
    

    在你的Action Set 的构造函数中,你可以这样调用:

    public void init(IWorkbenchWindow window) {
        IMenuManager menuManager = window.getMenuManager();
        if (menuManager != null) {
            menuManager.add(my_action);
        }
    }
    

    在这个例子中,我们为我们的Action Set 创建了一个名为"MyAction"的Action,并将其添加到了名为"Launch Shortcut"的菜单项上。当用户点击这个菜单项时,就会执行我们的Action Set 中的动作。

    注意,这只是一个基本的例子,实际的实现可能会根据你的具体需求有所不同。

    评论

报告相同问题?