【问题标题】:How to rename the eclipse plugin menu programmatically如何以编程方式重命名 Eclipse 插件菜单
【发布时间】:2017-03-17 07:48:47
【问题描述】:

我正在开发一个 Eclipse 插件。我在 plugin.xml 中给出了我的菜单、子菜单名称和插件 ID。

我想动态重命名我的插件 ID 以及我的菜单和子菜单名称。我遇到了这个 SOF link。我正在使用下面的代码。

     MenuManager menuManager = ((WorkbenchWindow)window).getMenuManager();

     Menu menu = menuManager.getMenu();

     String itemId = "plugin_menu_id";

     IContributionItem item = menuManager.find(itemId);

     System.out.println("item.getId() --> " + item.getId());
     //gives the plugin_menu_id      

     System.out.println( "menu.getItemCount() ==> "+ menu.getItemCount());
     //gives no of menus in eclipse

但不幸的是我找不到从 IContributionItem 重命名菜单的选项。 那么还有没有其他方法可以修改eclipse插件中的东西呢?

【问题讨论】:

  • WorkbenchWindow 是一个 internal 类,您使用它违反了Eclipse API Rules of Engagement
  • 哦,我不知道。那么可以做什么。还有其他选择吗?
  • 我不知道有其他选择。在任何情况下,贡献项都没有名称 - 贡献项通常会将一个或多个菜单项直接添加到菜单中。

标签: java eclipse eclipse-plugin eclipse-rcp


【解决方案1】:

我找到了一个临时解决方案。我没有使用 MenuManager,而是使用 Actions Framework 而不是 Command Framework 创建了一个动态菜单,尽管前者已被弃用。

所以每次我创建一个菜单,我都可以更改菜单名称、图标等。

我正在命令框架中搜索等效项,并会在找到后立即发布。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-15
    • 2013-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-10
    相关资源
    最近更新 更多