【问题标题】:How to remove a Category from Import wizard in Eclipse-RCP?如何从 Eclipse-RCP 中的导入向导中删除类别?
【发布时间】:2011-12-28 01:27:49
【问题描述】:

我需要在我的 eclipse-rcp 应用程序中添加一个导入向导。为此,我想仅将现有向导与我的类别一起使用。我在 Internet 上找到了几个示例,但它们并没有太大帮助。

我的问题是我不仅有我的类别,还有一般类别。如果可能的话,我想删除它。实际上我找到了一种解决方案here,但似乎它不起作用。我尝试将提供的代码 sn-p 放在 WorkbrenchWindowAdvisor 和 ActionBarAdvisor 中,甚至在创建我的向导之前执行它,但是具有 5 个可能向导的通用类别仍然存在。有什么建议,如何删除或至少隐藏?

BR, 亚历克斯G。

【问题讨论】:

    标签: java eclipse-rcp wizard plugin.xml


    【解决方案1】:

    您可以通过使用 org.eclipse.ui.activities 扩展点和适当的 activityPatternBinding 来选择在您的 RCP 应用程序中可见的贡献(尽管他们在您链接的页面上说了什么)。

    使用此扩展点,您可以定义一个活动,其模式匹配除您自己的贡献之外的任何内容(例如,pattern="[^\.]++\.(?!myplugin).*" 匹配 ID-s 不以 com.myplugin 开头的贡献)。此活动在未启用时将排除 UI 中的所有贡献,除了您自己的贡献。

    通过另一个活动,您将定义一个模式,其中包括您希望从其他插件中包含的贡献(例如,pattern=".*file\.import" 匹配文件菜单中的导入...菜单项)。这是您将在WorkbenchAdvisor 中使用

    启用的活动
    PlatformUI.getWorkbench().getActivitySupport().setEnabledActivityIds(...);
    

    请注意,这个特定的解决方案将禁用(几乎)所有 Eclipse 贡献,除了文件 > 导入...如果您想要启用很多功能并且只禁用小部分,这将需要相当多的挖掘。但大多数情况下都可以找出正确的模式来实现这一点。

    【讨论】:

    • 感谢您的回答,我认为这是唯一合适的解决方案,由于某种原因我无法使其正常工作。当我定义一个活动以仅匹配我的贡献时,我仍然可以看到其他一些贡献。
    • @AlexanderGavrilov 确实,某些 UI 元素仍会因不同的原因可见,具体取决于具体情况。例如,您不能禁用“Java 项目”向导等主要向导。或者,如果您正在重用一些操作构建器,那么那些可能会忽略活动。或者有时Eclipse中存在错误...
    • @MarttiKäärik:非常好的解决方案,使用正则表达式!
    【解决方案2】:

    听起来好像和你的RCP运行配置和包含的插件有关。

    常规类别(带有向导首选项、文件系统、现有项目、存档文件)由org.eclipse.ui.ide 插件提供。

    您的 RCP 应用程序是否需要此插件?

    查看this question related to the Help Menu in an RCP,因为它描述了如何检查和更改使用的插件。

    【讨论】:

    • 感谢您的回答,但很遗憾我无法删除 org.eclipse.ui.ide 插件,因为它是其他一些插件所必需的。
    【解决方案3】:

    您指出的解决方案的问题是它使用 NewWizardRegistry 来检索向导的类别。相反,如果您想删除导入向导,您应该轮询 Workbench 以获取 ImportWizardRegistry:

    AbstractExtensionWizardRegistry importWizardRegistry = (AbstractExtensionWizardRegistry) PlatformUI.getWorkbench().getImportWizardRegistry();

    其他一切正常。

    【讨论】:

      猜你喜欢
      • 2017-02-05
      • 2021-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多