如何从我的视图中的contextmenu中删除一些meun项目

时间:2017-12-19 12:41:57

标签: eclipse-rcp

我只在我的上下文菜单中添加了操作,它应该只显示“添加操作”菜单

但它也显示另一个菜单(与 - >添加基线比较) 我不知道它的来源以及如何删除或禁用它?

任何提示都非常受欢迎!

    private void hookContextMenu() {
    MenuManager menuMgr = new MenuManager("#PopupMenu");
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {

            IStructuredSelection sSelection = (IStructuredSelection) viewer
                    .getSelection();

            Object obj = ((IStructuredSelection) sSelection)
                    .getFirstElement();
            if (obj.toString().equals("Repository")) {
                manager.add(addGitAction);
            }

        }
    });
    Menu menu = menuMgr.createContextMenu(viewer.getControl());

    viewer.getControl().setMenu(menu);
    menu.getItems();
    getSite().registerContextMenu(menuMgr, viewer);
}

1 个答案:

答案 0 :(得分:1)

调用

getSite().registerContextMenu(menuMgr, viewer);

告诉Eclipse这是你的部分的上下文菜单,它应该添加其他插件的贡献,这些插件想要将自己添加到所有部分(或者特别是你的部分)。

如果您不想要其他插件的贡献,可以将其删除。