eclipse-rcp问题:viewerContribution添加的上下文菜单不起作用

时间:2011-06-14 06:59:19

标签: eclipse-rcp

 <extension
       point="org.eclipse.ui.popupMenus">
    <viewerContribution
          id="com.amarsoft.sysconfig.plugin.ConnectionsViewPopupContribution"
          targetID="com.amarsoft.sysconfig.plugin.views.ConnectionsView">
       <action
             class="com.amarsoft.sysconfig.plugin.actions.OpenConnectionAction"
             id="com.amarsoft.sysconfig.plugin.actions.OpenConnectionAction"
             label="打开"
             menubarPath="additions">
       </action>
    </viewerContribution>
 </extension>

但是当我打开com.amarsoft.sysconfig.plugin.views.ConnectionsView视图右键单击时,没有任何反复...

我将编辑我的帖子以添加所需的任何信息,因为现在我不知道可能导致此问题的原因。

2 个答案:

答案 0 :(得分:3)

为了使org.eclipse.ui.popupMenusorg.eclipse.ui.menus(首选)能够为视图上下文菜单做出贡献,该视图必须在框架中注册菜单,通常在createPartControl(Composite)中。例如:

MenuManager contextManager = new MenuManager();
contextManager.setRemoveAllWhenShown(true);
Menu contextMenu = contextManager.createContextMenu(viewer.getControl());
viewer.getControl().setMenu(contextMenu);
getSite().registerContextMenu(contextManager, viewer);

您可以创建示例插件并生成视图模板,它将提供一个连接到TreeViewer的示例。如果您不使用JFace查看器,则需要提供org.eclipse.jface.viewers.ISelectionProvider

的实现

答案 1 :(得分:0)

除非您的目标是Eclipse 3.3或更早,否则请考虑迁移到新的扩展点。有关详细信息,请参阅this blog entry

更新_ 链接