【发布时间】:2011-06-01 07:08:26
【问题描述】:
我有一个 Eclipse RCP 应用程序。我创建了一个编辑器。当我右键单击编辑器时,几乎没有上下文菜单(默认)。我还没有创建这些菜单。 请告诉我,如何删除编辑器的上下文菜单?
【问题讨论】:
标签: eclipse-plugin eclipse-rcp
我有一个 Eclipse RCP 应用程序。我创建了一个编辑器。当我右键单击编辑器时,几乎没有上下文菜单(默认)。我还没有创建这些菜单。 请告诉我,如何删除编辑器的上下文菜单?
【问题讨论】:
标签: eclipse-plugin eclipse-rcp
您扩展的编辑器需要不同的方法。 让我知道你扩展了什么,比我能回答的更有效率。
一般方式:
IWorkbenchParSite#registerContextMenu(...) 将被使用,因此找到调用它的位置,覆盖它。不推荐。因为这样做,为您的编辑器贡献的菜单扩展将不再起作用。
【讨论】:
如果您指的是出现在编辑器选项卡和视图选项卡上的系统菜单,则该菜单由演示文稿提供(2.1、经典、默认等)。没有任何调整可以简单地修改它。
删除它的两种方法是:
org.eclipse.ui.presentations.StackPresentation
API 和匹配的扩展点。
编写演示文稿是一项涉及
承担。org.eclipse.ui.workbench插件
并在您的 RCP 中修补该插件
应用程序。【讨论】:
如果您使用 Text 或 StyleText,您将获得系统默认菜单(剪切、复制、粘贴,可能是有关编码或输入的内容)。如果您不打算提供自己的菜单,只需创建一个空的 SWT 菜单并进行设置:
Menu emptyMenu = new Menu(text);
text.setMenu(emptyMenu);
Eclipse 也有一个文本编辑框架,如果您需要的不仅仅是一个基本的文本框,您应该检查一下。 http://wiki.eclipse.org/The_Official_Eclipse_FAQs#Text_Editors
【讨论】: