Example usage for org.eclipse.jface.action MenuManager setRemoveAllWhenShown

List of usage examples for org.eclipse.jface.action MenuManager setRemoveAllWhenShown

Introduction

In this page you can find the example usage for org.eclipse.jface.action MenuManager setRemoveAllWhenShown.

Prototype

@Override
    public void setRemoveAllWhenShown(boolean removeAll) 

Source Link

Usage

From source file:$packageName$.$className$.java

License:Open Source License

private void hookContextMenu() {
        MenuManager menuMgr = new MenuManager("#PopupMenu");
        menuMgr.setRemoveAllWhenShown(true);
        menuMgr.addMenuListener(new IMenuListener() {
            public void menuAboutToShow(IMenuManager manager) {
                $className$.this.fillContextMenu(manager);
            }/*from   www  .j  a  v a  2  s .  com*/
        });
        Menu menu = menuMgr.createContextMenu(viewer.getControl());
        viewer.getControl().setMenu(menu);
        getSite().registerContextMenu(menuMgr, viewer);
    }

From source file:ac.soton.fmusim.components.presentation.ComponentsEditor.java

License:Open Source License

/**
 * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
 * <!-- begin-user-doc -->/* ww w .  j  a va2 s. c  om*/
 * <!-- end-user-doc -->
 * @generated
 */
protected void createContextMenuFor(StructuredViewer viewer) {
    MenuManager contextMenu = new MenuManager("#PopUp");
    contextMenu.add(new Separator("additions"));
    contextMenu.setRemoveAllWhenShown(true);
    contextMenu.addMenuListener(this);
    Menu menu = contextMenu.createContextMenu(viewer.getControl());
    viewer.getControl().setMenu(menu);
    getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));

    int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
    Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance() };
    viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
    viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
}

From source file:amltransformation.composites.InternalTreeTableComposite.java

License:Open Source License

/**
 * Adds to the tree a context menu for showing and 
 * setting images for its elements. The menu is shown only
 *///  w ww .  j a v a  2s  . co  m
private void addContextMenu() {
    MenuManager menuMgr = new MenuManager();
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        @SuppressWarnings("unchecked")
        public void menuAboutToShow(IMenuManager manager) {
            if (viewer.getSelection().isEmpty()) {
                return;
            }

            if (((IStructuredSelection) viewer.getSelection()).getFirstElement() instanceof Hierarchy<?>) {
                final Hierarchy<InternalElement> selection = (Hierarchy<InternalElement>) ((IStructuredSelection) viewer
                        .getSelection()).getFirstElement();
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Assign for current element";
                    }

                    @Override
                    public void run() {
                        if (selection instanceof Hierarchy<?>) {
                            Role role = selection.getElement().getRequiredRole();
                            if (role != null) {
                                Class<? extends ITransformable> trans = AMLTransformationService
                                        .getTransformationProvider().getTransformationRepo()
                                        .getInterfaceTransformablesMapping().get(role);
                                if (trans != null) {
                                    SetElementTransformableDialog dialog = new SetElementTransformableDialog(
                                            getShell(), trans);
                                    dialog.open();
                                    if (dialog.getReturnCode() != SelectionDialog.CANCEL) {
                                        AMLTransformationService.getTransformationProvider()
                                                .putElementTransformable(selection.getElement(),
                                                        (Class<? extends ITransformable>) dialog
                                                                .getSelectedTransformable());
                                        viewer.refresh();
                                    }

                                } else {
                                    MessageDialog.openInformation(getShell(), "Unassigned Role",
                                            role.getName() + " has to be assigned to a transformable first!");
                                }

                            } else {
                                MessageDialog.openInformation(getShell(), "No Role",
                                        selection.getName() + " has no role!");
                            }
                        }
                    }
                });
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Assign for current element and children";
                    }

                    @Override
                    public void run() {
                        if (selection instanceof Hierarchy<?>) {
                            Role role = selection.getElement().getRequiredRole();
                            if (role != null) {
                                Class<? extends ITransformable> trans = AMLTransformationService
                                        .getTransformationProvider().getTransformationRepo()
                                        .getInterfaceTransformablesMapping().get(role);
                                if (trans != null) {
                                    SetElementTransformableDialog dialog = new SetElementTransformableDialog(
                                            getShell(), trans);
                                    dialog.open();
                                    if (dialog.getReturnCode() != SelectionDialog.CANCEL) {
                                        Class<? extends ITransformable> selectedTransformable = (Class<? extends ITransformable>) dialog
                                                .getSelectedTransformable();
                                        AMLTransformationService.getTransformationProvider()
                                                .putElementTransformable(selection.getElement(),
                                                        selectedTransformable);
                                        List<Hierarchy<InternalElement>> children = getFlattenedHierarchyChildren(
                                                selection);
                                        for (Hierarchy<?> child : children) {
                                            Class<? extends ITransformable> childTrans = AMLTransformationService
                                                    .getTransformationProvider().getTransformationRepo()
                                                    .getInterfaceTransformablesMapping()
                                                    .get(((InternalElement) child.getElement())
                                                            .getRequiredRole());
                                            if (selection.getElement().getClass()
                                                    .isAssignableFrom(child.getElement().getClass())
                                                    && TransformationUtil
                                                            .getAllModelsImplementingTransformable(childTrans)
                                                            .contains(selectedTransformable)) {
                                                AMLTransformationService.getTransformationProvider()
                                                        .putElementTransformable(
                                                                (InternalElement) child.getElement(),
                                                                selectedTransformable);
                                            }
                                        }
                                        viewer.refresh();
                                    }

                                } else {
                                    MessageDialog.openInformation(getShell(), "Unassigned Role",
                                            role.getName() + " has to be assigned to a transformable first!");
                                }

                            } else {
                                MessageDialog.openInformation(getShell(), "No Role",
                                        selection.getName() + " has no role!");
                            }
                        }
                    }
                });
                manager.add(new Separator());
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Assign automatically";
                    }

                    @Override
                    public void run() {
                        List<Hierarchy<InternalElement>> allHierarchies = AMLTransformationService
                                .getAMLProvider().getAMLModelRepo(InternalElement.class)
                                .getFlattenedHierarchies();
                        for (Hierarchy<InternalElement> hie : allHierarchies) {
                            String name = hie.getName().toLowerCase();
                            if (!name.contains("dummy")) {
                                Role role = ((InternalElement) hie.getElement()).getRequiredRole();
                                if (role != null) {
                                    Class<? extends ITransformable> trans = AMLTransformationService
                                            .getTransformationProvider().getTransformationRepo()
                                            .getInterfaceTransformablesMapping().get(role);
                                    if (trans != null) {
                                        Set<Class<?>> transformables = TransformationUtil
                                                .getAllModelsImplementingTransformable(trans);
                                        if (transformables.size() == 1) {
                                            AMLTransformationService.getTransformationProvider()
                                                    .putElementTransformable((InternalElement) hie.getElement(),
                                                            (Class<? extends ITransformable>) transformables
                                                                    .iterator().next());
                                        }
                                        viewer.refresh();

                                    }
                                }
                            }

                        }
                    }
                });
                manager.add(new Separator());
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Unassign";
                    }

                    @Override
                    public void run() {
                        if (selection instanceof Hierarchy<?>) {
                            AMLTransformationService.getTransformationProvider().getTransformationRepo()
                                    .getAdapterTransformablesMapping().remove(selection.getElement());
                            viewer.refresh();
                        }
                    }
                });
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Unassign all";
                    }

                    @Override
                    public void run() {
                        AMLTransformationService.getTransformationProvider().getTransformationRepo()
                                .getAdapterTransformablesMapping().clear();
                        viewer.refresh();
                    }
                });

            }
        }
    });

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

From source file:amltransformation.composites.RoleTreeTableComposite.java

License:Open Source License

/**
 * Adds to the tree a context menu for showing and 
 * setting images for its elements. The menu is shown only
 *//*from   w  ww .ja va 2s.  c  om*/
private void addContextMenu() {
    MenuManager menuMgr = new MenuManager();
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            if (viewer.getSelection().isEmpty()) {
                return;
            }

            final Role selection = (Role) ((IStructuredSelection) viewer.getSelection()).getFirstElement();
            if (selection instanceof Role) {

                manager.add(new Action() {

                    @Override
                    public String getText() {
                        return "Assign transformable for current element";
                    }

                    @SuppressWarnings("unchecked")
                    @Override
                    public void run() {
                        if (selection instanceof Role) {
                            SetTransformableDialog dialog = new SetTransformableDialog(getShell());
                            dialog.open();
                            if (dialog.getReturnCode() != SelectionDialog.CANCEL) {
                                AMLTransformationService.getTransformationProvider().putTransformable(selection,
                                        (Class<? extends ITransformable>) dialog.getSelectedTransformable());
                                viewer.refresh();
                            }
                        }
                    }
                });
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Assign transformable for current element and children";
                    }

                    @SuppressWarnings("unchecked")
                    @Override
                    public void run() {
                        if (selection instanceof Role) {
                            SetTransformableDialog dialog = new SetTransformableDialog(getShell());
                            dialog.open();
                            if (dialog.getReturnCode() != SelectionDialog.CANCEL) {
                                AMLTransformationService.getTransformationProvider().putTransformable(selection,
                                        (Class<? extends ITransformable>) dialog.getSelectedTransformable());
                                List<Role> children = getAllFlattenedChildrenRoles(selection);
                                for (Role role : children) {
                                    AMLTransformationService.getTransformationProvider().putTransformable(role,
                                            (Class<? extends ITransformable>) dialog
                                                    .getSelectedTransformable());
                                }
                                viewer.refresh();
                            }
                        }
                    }

                });
                manager.add(new Separator());
                manager.add(new Action() {

                    @Override
                    public String getText() {
                        return "Assign transformables automatically";
                    }

                    @Override
                    public void run() {
                        List<Hierarchy<Role>> allHierarchies = AMLTransformationService.getAMLProvider()
                                .getAMLModelRepo(Role.class).getFlattenedHierarchies();
                        for (Hierarchy<?> hie : allHierarchies) {
                            String name = hie.getName().toLowerCase();
                            Role role = (Role) hie.getElement();
                            if (name.contains("templateskill")) {
                                AMLTransformationService.getTransformationProvider().putTransformable(role,
                                        ITemplateSkillTransformable.class);
                                setTransformablesRoleRecursive(role, ITemplateSkillTransformable.class);
                            } else if (name.contains("productionskill")) {
                                AMLTransformationService.getTransformationProvider().putTransformable(role,
                                        IProductionSkillTransformable.class);
                                setTransformablesRoleRecursive(role, IProductionSkillTransformable.class);
                            } else if (name.contains("resourceskill")) {
                                AMLTransformationService.getTransformationProvider().putTransformable(role,
                                        IResourceSkillTransformable.class);
                                setTransformablesRoleRecursive(role, IResourceSkillTransformable.class);
                            } else if (name.contains("skillproresource")) {
                                AMLTransformationService.getTransformationProvider().putTransformable(role,
                                        IResourceTransformable.class);
                                setTransformablesRoleRecursive(role, IResourceTransformable.class);
                            } else if (name.contains("skillproproduct")) {
                                AMLTransformationService.getTransformationProvider().putTransformable(role,
                                        IProductTransformable.class);
                                setTransformablesRoleRecursive(role, IProductTransformable.class);
                            } else if (name.contains("resourcestructure")) {
                                AMLTransformationService.getTransformationProvider().putTransformable(role,
                                        IFactoryNodeTransformable.class);
                                setTransformablesRoleRecursive(role, IFactoryNodeTransformable.class);
                            } else if (name.contains("enterprise")) {
                                AMLTransformationService.getTransformationProvider().putTransformable(role,
                                        IFactoryTransformable.class);
                                setTransformablesRoleRecursive(role, IFactoryTransformable.class);
                            }
                        }
                        viewer.refresh();
                    }
                });
                manager.add(new Separator());
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Unassign transformable";
                    }

                    @Override
                    public void run() {
                        if (selection instanceof Role) {
                            AMLTransformationService.getTransformationProvider().getTransformationRepo()
                                    .getInterfaceTransformablesMapping().remove(selection);
                            viewer.refresh();
                        }
                    }
                });
                manager.add(new Action() {
                    @Override
                    public String getText() {
                        return "Unassign all";
                    }

                    @Override
                    public void run() {
                        AMLTransformationService.getTransformationProvider().getTransformationRepo()
                                .getInterfaceTransformablesMapping().clear();
                        viewer.refresh();
                    }
                });
            }
        }
    });
    Menu menu = menuMgr.createContextMenu(viewer.getControl());
    viewer.getControl().setMenu(menu);
}

From source file:anylinklicense.views.LicenseView.java

License:Open Source License

private void hookContextMenu() {
    MenuManager menuMgr = new MenuManager("#PopupMenu");
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            LicenseView.this.fillContextMenu(manager);
        }/*from  w ww.j  a  v  a 2  s  .  c o  m*/
    });
    Menu menu = menuMgr.createContextMenu(viewer.getControl());
    viewer.getControl().setMenu(menu);
    getSite().registerContextMenu(menuMgr, viewer);
}

From source file:aspectminingtool.views.FanIn.ViewPartFanIn.java

License:Open Source License

private void createContextMenu() {

    MenuManager menuMgr = new MenuManager();
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager mgr) {
            fillContextMenuMethodsTableViewer(mgr);
        }/*from ww  w.  j  av a2  s  .c  o m*/

    });
    // Create menu for methodsTableViewer
    Menu menu = menuMgr.createContextMenu(tableViewerLeft.getControl());
    tableViewerLeft.getControl().setMenu(menu);

    // Register menu for extension.
    getSite().registerContextMenu(menuMgr, tableViewerLeft);

    MenuManager menuMgr1 = new MenuManager();
    menuMgr1.setRemoveAllWhenShown(true);
    menuMgr1.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager mgr) {
            fillContextMenuCallsTableViewer(mgr);
        }

    });
    // Create menu for methodsTableViewer
    Menu menu1 = menuMgr1.createContextMenu(tableViewerRight.getControl());
    tableViewerRight.getControl().setMenu(menu1);

    // Register menu for extension.
    getSite().registerContextMenu(menuMgr1, tableViewerRight);

}

From source file:aspectminingtool.views.FanInSeeds.ViewPartFanInSeeds.java

License:Open Source License

private void createContextMenu() {
    // Create menu manager for methodsTableViewer
    MenuManager menuMgr = new MenuManager();
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager mgr) {
            fillContextMenuMethodsTableViewer(mgr);
        }/* w ww .  ja  v  a 2  s  . c o  m*/

    });
    // Create menu for methodsTableViewer
    Menu menu = menuMgr.createContextMenu(tableViewerLeft.getControl());
    tableViewerLeft.getControl().setMenu(menu);

    // Register menu for extension.
    getSite().registerContextMenu(menuMgr, tableViewerLeft);

    // Create menu manager for methodsTableViewer for callsTableViewer
    MenuManager menuMgr1 = new MenuManager();
    menuMgr1.setRemoveAllWhenShown(true);
    menuMgr1.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager mgr) {
            fillContextMenuCallsTableViewer(mgr);
        }

    });
    // Create menu for callsTableViewer
    Menu menu1 = menuMgr1.createContextMenu(tableViewerRight.getControl());
    tableViewerRight.getControl().setMenu(menu1);

    // Register menu for extension.
    getSite().registerContextMenu(menuMgr1, tableViewerRight);
}

From source file:aspectminingtool.views.FlowGraph.ViewPartFlowGraph.java

License:Open Source License

private void createContextMenuTableLeft() {

    for (int i = 0; i < tablesVLeft.length; i++) {

        MenuManager menuMgr = new MenuManager();
        menuMgr.setRemoveAllWhenShown(true);
        menuMgr.addMenuListener(new MenuLeftListener(tablesVLeft[i], selectAllActionsLeft[i],
                openClassActionTableL[i], selectMethodAsSeedAction[i]));
        // Create menu for methodsTableViewer
        Menu menu = menuMgr.createContextMenu(tablesVLeft[i].getControl());
        tablesVLeft[i].getControl().setMenu(menu);

        // Register menu for extension.
        getSite().registerContextMenu(menuMgr, tablesVLeft[i]);

    }/*from   w  w  w  . j a  v  a  2s.  c o m*/
}

From source file:aspectminingtool.views.FlowGraph.ViewPartFlowGraph.java

License:Open Source License

private void createContextMenuTableRight(int i) {

    MenuManager menuMgr1 = new MenuManager();
    menuMgr1.setRemoveAllWhenShown(true);
    menuMgr1.addMenuListener(/*from   w  w  w . j  a  v a 2  s. c  om*/
            new MenuRightListener(tablesVRight[i], selectAllActionsRight[i], openClassActionTableR[i]));

    // Create menu for methodsTableViewer
    Menu menu1 = menuMgr1.createContextMenu(tablesVRight[i].getControl());
    tablesVRight[i].getControl().setMenu(menu1);

    // Register menu for extension.
    getSite().registerContextMenu(menuMgr1, tablesVRight[i]);
}

From source file:aspectminingtool.views.RedirectorFinder.ViewPartRedirectorFinder.java

License:Open Source License

private void createPopUps() {

    MenuManager menuMgr = new MenuManager();
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager mgr) {
            fillContextMenutableViewerLeft(mgr);
        }//from  w  w  w  . j  ava2  s.  co  m

        private void fillContextMenutableViewerLeft(IMenuManager mgr) {
            mgr.add(openActionTableLeft);
            mgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
            mgr.add(selectAsSeedOperation);
            mgr.add(new Separator());
            mgr.add(selectAllActionMethodsTable);

        }

    });
    // Create menu for methodsTableViewer
    Menu menu = menuMgr.createContextMenu(tableViewerLeft.getControl());
    tableViewerLeft.getControl().setMenu(menu);

    // Register menu for extension.
    getSite().registerContextMenu(menuMgr, tableViewerLeft);

    MenuManager menuMgr1 = new MenuManager();
    menuMgr1.setRemoveAllWhenShown(true);
    menuMgr1.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager mgr) {
            fillContextMenutableViewerRight(mgr);
        }

        private void fillContextMenutableViewerRight(IMenuManager mgr) {
            mgr.add(openActionTableRight);
            mgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
            mgr.add(new Separator());
            mgr.add(selectAllActionCallsTable);

        }

    });
    // Create menu for methodsTableViewer
    Menu menu1 = menuMgr1.createContextMenu(tableViewerRight.getControl());
    tableViewerRight.getControl().setMenu(menu1);

    // Register menu for extension.
    getSite().registerContextMenu(menuMgr1, tableViewerRight);

}