我需要将导入向导添加到我的eclipse-rcp应用程序中。为此,我想使用现有的向导只与我的类别。我在互联网上找到了几个例子,但它们没有多大帮助。
我的问题是,我不仅有我的类别,而且还有General类别。如果可能的话,我想删除它。实际上,我已经找到了一个解决方案here,但它似乎不起作用。我已经尝试将提供的代码片段放在WorkbrenchWindowAdvisor和ActionBarAdvisor中,甚至在我的向导创建之前执行它,但是包含5个可能的向导的常规类别仍然存在。有什么建议,如何移除它,或者至少隐藏它?
BR,AlexG。
发布于 2011-11-17 16:29:24
通过使用带有适当activityPatternBinding的org.eclipse.ui.activities扩展点,您可以选择哪些贡献在您的RCP应用程序中是可见的(不管它们在您所链接的页面上显示了什么)。
使用此扩展点,您可以定义一个具有模式的活动,该模式匹配除您自己的贡献之外的任何内容(例如,pattern="[^\.]++\.(?!myplugin).*"匹配ID-s不以com.myplugin开头的贡献)。此活动未启用时,将从UI中排除除您自己的贡献之外的所有贡献。
通过另一个活动,您将定义一个模式,其中包含您希望从其他插件中包含的贡献(例如,pattern=".*file\.import"匹配导入...文件菜单中的菜单项)。这是您将使用以下命令在WorkbenchAdvisor中启用的活动
PlatformUI.getWorkbench().getActivitySupport().setEnabledActivityIds(...);请注意,这个特殊的解决方案将禁用(几乎)所有的Eclipse贡献,除了File > Import...如果你想启用很多功能,而只禁用很小的部分,这将需要相当多的挖掘。但最有可能找到正确的模式来实现这一点。
发布于 2011-11-16 01:39:10
这听起来像是与您的RCP运行配置和包含的插件有关。
General类别(及其向导首选项、文件系统、现有项目、存档文件)由org.eclipse.ui.ide插件提供。
您的RCP应用程序是否需要此插件?
请看一下this question related to the Help Menu in an RCP,因为它描述了如何检查和更改所使用的插件。
发布于 2013-10-22 23:36:50
您指出的解决方案的问题在于,它使用NewWizardRegistry来检索向导的类别。相反,如果您想要删除导入向导,则应该轮询工作台中的ImportWizardRegistry:
PlatformUI.getWorkbench().getImportWizardRegistry();AbstractExtensionWizardRegistry importWizardRegistry = (AbstractExtensionWizardRegistry)
其他的都没问题。
https://stackoverflow.com/questions/8112012
复制相似问题