Example usage for org.eclipse.jface.action IMenuListener2 IMenuListener2

List of usage examples for org.eclipse.jface.action IMenuListener2 IMenuListener2

Introduction

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

Prototype

IMenuListener2

Source Link

Usage

From source file:com.cisco.yangide.ext.refactoring.ui.RenameInformationPopup.java

License:Open Source License

private MenuManager getMenuManager() {
    if (fMenuManager != null) {
        return fMenuManager;
    }//from   ww w .  ja v  a 2 s .  com

    fMenuManager = new MenuManager();
    fMenuManager.setRemoveAllWhenShown(true);

    fMenuManager.addMenuListener(new IMenuListener2() {
        @Override
        public void menuAboutToHide(IMenuManager manager) {
            fIsMenuUp = false;
        }

        @Override
        public void menuAboutToShow(IMenuManager manager) {
            boolean canRefactor = !renameLinkedMode.isOriginalName();

            IAction refactorAction = new Action("Refactor") {
                @Override
                public void run() {
                    activateEditor();
                    renameLinkedMode.doRename(false);
                }
            };
            refactorAction.setAccelerator(SWT.CR);
            refactorAction.setEnabled(canRefactor);
            manager.add(refactorAction);

            IAction previewAction = new Action("Pre&view...") {
                @Override
                public void run() {
                    activateEditor();
                    renameLinkedMode.doRename(true);
                }
            };
            previewAction.setAccelerator(SWT.CTRL | SWT.CR);
            previewAction.setEnabled(canRefactor);
            manager.add(previewAction);

            IAction openDialogAction = new Action("&Open Rename Dialog..." + '\t' + fOpenDialogBinding) {
                @Override
                public void run() {
                    activateEditor();
                    renameLinkedMode.startFullDialog();
                }
            };
            manager.add(openDialogAction);

            manager.add(new Separator());

            MenuManager subMenuManager = new MenuManager("&Snap To");
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_LEFT_FIELD, "&Under Left");
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_RIGHT_FIELD, "U&nder Right");
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_LEFT_FIELD, "&Over Left");
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_RIGHT_FIELD, "O&ver Right");
            addMoveMenuItem(subMenuManager, SNAP_POSITION_LOWER_RIGHT, "&Bottom Right");
            manager.add(subMenuManager);
        }
    });
    return fMenuManager;
}

From source file:com.google.cloud.tools.eclipse.ui.util.OpenDropDownMenuHandler.java

License:Apache License

/**
 * Opens drop-down menu./* w  w  w  .ja v a  2  s  .com*/
 */
private static void openDropDownMenu(final String menuId, final ToolItem toolItem,
        final IMenuService menuService) {
    final MenuManager menuManager = new MenuManager();
    Menu menu = menuManager.createContextMenu(toolItem.getParent());
    menuManager.addMenuListener(new IMenuListener2() {
        @Override
        public void menuAboutToHide(IMenuManager manager) {
            toolItem.getDisplay().asyncExec(new Runnable() {
                @Override
                public void run() {
                    menuService.releaseContributions(menuManager);
                    menuManager.dispose();
                }
            });
        }

        @Override
        public void menuAboutToShow(IMenuManager manager) {
            menuService.populateContributionManager(menuManager, "menu:" + menuId);
        }
    });
    // place the menu below the drop-down item
    Rectangle itemBounds = toolItem.getBounds();
    Point point = toolItem.getParent().toDisplay(new Point(itemBounds.x, itemBounds.y + itemBounds.height));
    menu.setLocation(point.x, point.y);
    menu.setVisible(true);
}

From source file:com.google.dart.tools.ui.internal.refactoring.reorg.RenameInformationPopup.java

License:Open Source License

private MenuManager getMenuManager() {
    if (fMenuManager != null) {
        return fMenuManager;
    }//from  w ww. j a  va2 s.c  o m

    fMenuManager = new MenuManager();
    fMenuManager.setRemoveAllWhenShown(true);

    fMenuManager.addMenuListener(new IMenuListener2() {
        @Override
        public void menuAboutToHide(IMenuManager manager) {
            fIsMenuUp = false;
        }

        @Override
        public void menuAboutToShow(IMenuManager manager) {
            boolean canRefactor = !fRenameLinkedMode.isOriginalName();

            IAction refactorAction = new Action(ReorgMessages.RenameInformationPopup_RenameInWorkspace) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.doRename(false);
                }
            };
            refactorAction.setAccelerator(SWT.CR);
            refactorAction.setEnabled(canRefactor);
            manager.add(refactorAction);

            IAction previewAction = new Action(ReorgMessages.RenameInformationPopup_Preview) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.doRename(true);
                }
            };
            previewAction.setAccelerator(SWT.CTRL | SWT.CR);
            previewAction.setEnabled(canRefactor);
            manager.add(previewAction);

            IAction openDialogAction = new Action(
                    ReorgMessages.RenameInformationPopup_OpenDialog + '\t' + fOpenDialogBinding) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.startFullDialog();
                }
            };
            manager.add(openDialogAction);

            manager.add(new Separator());

            MenuManager subMenuManager = new MenuManager(ReorgMessages.RenameInformationPopup_SnapTo);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_LEFT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_under_left);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_RIGHT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_under_right);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_LEFT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_over_left);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_RIGHT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_over_right);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_LOWER_RIGHT,
                    ReorgMessages.RenameInformationPopup_snap_bottom_right);
            manager.add(subMenuManager);

            //        IAction prefsAction = new Action(ReorgMessages.RenameInformationPopup_preferences) {
            //          @Override
            //          public void run() {
            //            fRenameLinkedMode.cancel();
            //            String linkedModePrefPageID = "org.eclipse.ui.editors.preferencePages.LinkedModePreferencePage"; //$NON-NLS-1$
            //            String refactoringPrefPageID = JavaBasePreferencePage.JAVA_BASE_PREF_PAGE_ID;
            //            PreferencesUtil.createPreferenceDialogOn(fEditor.getSite().getShell(),
            //                refactoringPrefPageID, new String[] {linkedModePrefPageID, refactoringPrefPageID},
            //                null).open();
            //          }
            //        };
            //        manager.add(prefsAction);
        }
    });
    return fMenuManager;
}

From source file:com.redhat.ceylon.eclipse.code.refactor.RefactorInformationPopup.java

License:Open Source License

private MenuManager getMenuManager() {
    if (fMenuManager != null) {
        return fMenuManager;
    }/*from ww  w  .j  ava 2 s.c om*/

    fMenuManager = new MenuManager();
    fMenuManager.setRemoveAllWhenShown(true);

    fMenuManager.addMenuListener(new IMenuListener2() {
        public void menuAboutToHide(IMenuManager manager) {
            fIsMenuUp = false;
        }

        public void menuAboutToShow(IMenuManager manager) {
            addApplyMenuItem(manager);
            fLinkedMode.addAdditionalMenuItems(manager);
            manager.add(new Separator());
            addSnapToMenuItem(manager);
            addPreferencesMenuItem(manager);
        }
    });

    return fMenuManager;
}

From source file:de.walware.ecommons.ui.actions.SimpleContributionItem.java

License:Open Source License

protected void initDropDownMenu(final MenuManager menuManager) {
    final Menu menu = menuManager.getMenu();
    menuManager.addMenuListener(new IMenuListener2() {
        @Override//w  w  w . j a  v a2 s  .c om
        public void menuAboutToShow(final IMenuManager manager) {
            dropDownMenuAboutToShow(manager);
        }

        @Override
        public void menuAboutToHide(final IMenuManager manager) {
            menu.getDisplay().asyncExec(new Runnable() {
                @Override
                public void run() {
                    menuManager.dispose();
                }
            });
        }
    });
}

From source file:de.walware.ecommons.ui.util.MenuUtil.java

License:Open Source License

public static void registerOneWayMenu(final MenuManager menuManager, final String id) {
    final IMenuService menuService = (IMenuService) PlatformUI.getWorkbench().getService(IMenuService.class);
    final Menu menu = menuManager.getMenu();
    menuManager.addMenuListener(new IMenuListener2() {
        @Override//w  w w .j  a  va 2s  .  c  o m
        public void menuAboutToShow(final IMenuManager manager) {
            menuService.populateContributionManager(menuManager, "menu:" + id); //$NON-NLS-1$
        }

        @Override
        public void menuAboutToHide(final IMenuManager manager) {
            menu.getDisplay().asyncExec(new Runnable() {
                @Override
                public void run() {
                    menuService.releaseContributions(menuManager);
                    menuManager.dispose();
                }
            });
        }
    });
}

From source file:de.walware.statet.nico.ui.console.NIConsolePage.java

License:Open Source License

protected void contributeToActionBars(final IServiceLocator serviceLocator, final IActionBars actionBars,
        final HandlerCollection handlers) {
    fMultiActionHandler.registerActions(actionBars);

    final IToolBarManager toolBarManager = actionBars.getToolBarManager();
    toolBarManager.appendToGroup(IConsoleConstants.OUTPUT_GROUP, fOutputClearAllAction);
    toolBarManager.appendToGroup(IConsoleConstants.OUTPUT_GROUP, fOutputScrollLockAction);

    toolBarManager.appendToGroup(IConsoleConstants.LAUNCH_GROUP, new HandlerContributionItem(
            new CommandContributionItemParameter(serviceLocator, CancelHandler.MENU_ID,
                    NicoUI.CANCEL_CURRENT_COMMAND_ID, null, null, null, null, Messages.CancelAction_name, null,
                    Messages.CancelAction_tooltip, HandlerContributionItem.STYLE_PULLDOWN, null, false),
            fPageHandlers.get(NicoUI.CANCEL_CURRENT_COMMAND_ID)) {
        // Workaround for E-Bug #366528
        @Override/*w ww . j a v a 2  s  .c om*/
        protected void initDropDownMenu(final MenuManager menuManager) {
            menuManager.addMenuListener(new IMenuListener2() {
                @Override
                public void menuAboutToShow(final IMenuManager manager) {
                    manager.add(new CommandContributionItem(new CommandContributionItemParameter(serviceLocator,
                            null, NicoUI.CANCEL_CURRENT_COMMAND_ID, CommandContributionItem.STYLE_PUSH)));
                    manager.add(new CommandContributionItem(new CommandContributionItemParameter(serviceLocator,
                            null, NicoUI.CANCEL_PAUSE_COMMAND_ID, CommandContributionItem.STYLE_PUSH)));
                    manager.add(new CommandContributionItem(new CommandContributionItemParameter(serviceLocator,
                            null, NicoUI.CANCEL_ALL_COMMAND_ID, CommandContributionItem.STYLE_PUSH)));
                }

                @Override
                public void menuAboutToHide(final IMenuManager manager) {
                    display.asyncExec(new Runnable() {
                        @Override
                        public void run() {
                            menuManager.dispose();
                        }
                    });
                }
            });
        }
    });
    toolBarManager.appendToGroup(IConsoleConstants.LAUNCH_GROUP, fTerminateAction);
    toolBarManager.appendToGroup(IConsoleConstants.LAUNCH_GROUP, fRemoveAction);
    toolBarManager.appendToGroup(IConsoleConstants.LAUNCH_GROUP, fRemoveAllAction);

    final IMenuManager menuManager = actionBars.getMenuManager();
    menuManager.add(new Separator(NICO_CONTROL_MENU_ID));
    menuManager.add(new Separator(SharedUIResources.ADDITIONS_MENU_ID));

    menuManager.add(new Separator("tracking")); //$NON-NLS-1$
    final MenuManager trackingMenu = new MenuManager("Open In Editor") {
        @Override
        public boolean isVisible() {
            return !getTool().getTracks().isEmpty();
        }
    };
    trackingMenu.add(new OpenTrackingFilesContributionItem(getTool()));
    menuManager.add(trackingMenu);
    menuManager.add(new SimpleContributionItem("Export Console Output...", null) {
        @Override
        protected void execute() throws ExecutionException {
            final ToolProcess tool = getTool();
            if (tool == null) {
                return;
            }
            final ExportConsoleOutputWizard wizard = new ExportConsoleOutputWizard(NIConsolePage.this);
            final WizardDialog dialog = new NicoWizardDialog(getSite().getShell(), wizard);
            dialog.setBlockOnOpen(false);
            dialog.open();
        }
    });

    menuManager.add(new Separator("settings")); //$NON-NLS-1$
    menuManager.add(new SimpleContributionItem("Preferences...", "P") {
        @Override
        protected void execute() throws ExecutionException {
            final Shell shell = getSite().getShell();
            final List<String> pageIds = new ArrayList<String>();
            NIConsolePage.this.collectContextMenuPreferencePages(pageIds);
            if (!pageIds.isEmpty() && (shell == null || !shell.isDisposed())) {
                org.eclipse.ui.dialogs.PreferencesUtil.createPreferenceDialogOn(shell, pageIds.get(0),
                        pageIds.toArray(new String[pageIds.size()]), null).open();
            }
        }
    });

    menuManager.add(new Separator());
}

From source file:ext.org.eclipse.jdt.internal.ui.refactoring.reorg.RenameInformationPopup.java

License:Open Source License

private MenuManager getMenuManager() {
    if (fMenuManager != null) {
        return fMenuManager;
    }// w w w .j ava2  s  .  c o m

    fMenuManager = new MenuManager();
    fMenuManager.setRemoveAllWhenShown(true);

    fMenuManager.addMenuListener(new IMenuListener2() {
        public void menuAboutToHide(IMenuManager manager) {
            fIsMenuUp = false;
        }

        public void menuAboutToShow(IMenuManager manager) {
            boolean canRefactor = !fRenameLinkedMode.isOriginalName();

            IAction refactorAction = new Action(ReorgMessages.RenameInformationPopup_RenameInWorkspace) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.doRename(false);
                }
            };
            refactorAction.setAccelerator(SWT.CR);
            refactorAction.setEnabled(canRefactor);
            manager.add(refactorAction);

            IAction previewAction = new Action(ReorgMessages.RenameInformationPopup_Preview) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.doRename(true);
                }
            };
            previewAction.setAccelerator(SWT.CTRL | SWT.CR);
            previewAction.setEnabled(canRefactor);
            manager.add(previewAction);

            IAction openDialogAction = new Action(
                    ReorgMessages.RenameInformationPopup_OpenDialog + '\t' + fOpenDialogBinding) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.startFullDialog();
                }
            };
            manager.add(openDialogAction);

            manager.add(new Separator());

            MenuManager subMenuManager = new MenuManager(ReorgMessages.RenameInformationPopup_SnapTo);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_LEFT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_under_left);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_RIGHT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_under_right);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_LEFT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_over_left);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_RIGHT_FIELD,
                    ReorgMessages.RenameInformationPopup_snap_over_right);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_LOWER_RIGHT,
                    ReorgMessages.RenameInformationPopup_snap_bottom_right);
            manager.add(subMenuManager);

            IAction prefsAction = new Action(ReorgMessages.RenameInformationPopup_preferences) {
                @Override
                public void run() {
                    fRenameLinkedMode.cancel();
                    String linkedModePrefPageID = "org.eclipse.ui.editors.preferencePages.LinkedModePreferencePage"; //$NON-NLS-1$
                    String refactoringPrefPageID = JavaBasePreferencePage.JAVA_BASE_PREF_PAGE_ID;
                    PreferencesUtil
                            .createPreferenceDialogOn(fEditor.getSite().getShell(), refactoringPrefPageID,
                                    new String[] { linkedModePrefPageID, refactoringPrefPageID }, null)
                            .open();
                }
            };
            manager.add(prefsAction);
        }
    });
    return fMenuManager;
}

From source file:fr.imag.adele.cadse.si.workspace.uiplatform.swt.ui.DAbstractField.java

License:Apache License

protected void createContextMenu(Control parent) {
    if (_ic instanceof IC_ContextMenu) {
        _menumanager = new MenuManager();
        final IC_ContextMenu contextMenu = ((IC_ContextMenu) _ic);
        _menumanager.setRemoveAllWhenShown(contextMenu.hasRemoveAllWhenShown());
        _menumanager.createContextMenu(parent);
        _menumanager.addMenuListener(new IMenuListener2() {

            public void menuAboutToHide(IMenuManager manager) {
                contextMenu.menuAboutToHide(getSelectedObjects(), manager);
            }/*from w  w  w . j  a va 2  s . c om*/

            public void menuAboutToShow(IMenuManager manager) {
                contextMenu.menuAboutToShow(getSelectedObjects(), manager);
            }

        });
        getMainControl().setMenu(_menumanager.getMenu());
    }
}

From source file:org.eclipse.cdt.internal.ui.refactoring.rename.RenameInformationPopup.java

License:Open Source License

private MenuManager getMenuManager() {
    if (fMenuManager != null) {
        return fMenuManager;
    }/*w  w w .  j  av  a2s .co m*/

    fMenuManager = new MenuManager();
    fMenuManager.setRemoveAllWhenShown(true);

    fMenuManager.addMenuListener(new IMenuListener2() {
        @Override
        public void menuAboutToHide(IMenuManager manager) {
            fIsMenuUp = false;
        }

        @Override
        public void menuAboutToShow(IMenuManager manager) {
            boolean canRefactor = !fRenameLinkedMode.isOriginalName();

            IAction refactorAction = new Action(RenameMessages.RenameInformationPopup_RenameInWorkspace) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.doRename(false);
                }
            };
            refactorAction.setAccelerator(SWT.CR);
            refactorAction.setEnabled(canRefactor);
            manager.add(refactorAction);

            IAction previewAction = new Action(RenameMessages.RenameInformationPopup_Preview) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.doRename(true);
                }
            };
            previewAction.setAccelerator(SWT.CTRL | SWT.CR);
            previewAction.setEnabled(canRefactor);
            manager.add(previewAction);

            IAction openDialogAction = new Action(
                    RenameMessages.RenameInformationPopup_OpenDialog + '\t' + fOpenDialogBinding) {
                @Override
                public void run() {
                    activateEditor();
                    fRenameLinkedMode.startFullDialog();
                }
            };
            manager.add(openDialogAction);

            manager.add(new Separator());

            MenuManager subMenuManager = new MenuManager(RenameMessages.RenameInformationPopup_SnapTo);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_LEFT_FIELD,
                    RenameMessages.RenameInformationPopup_snap_under_left);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_UNDER_RIGHT_FIELD,
                    RenameMessages.RenameInformationPopup_snap_under_right);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_LEFT_FIELD,
                    RenameMessages.RenameInformationPopup_snap_over_left);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_OVER_RIGHT_FIELD,
                    RenameMessages.RenameInformationPopup_snap_over_right);
            addMoveMenuItem(subMenuManager, SNAP_POSITION_LOWER_RIGHT,
                    RenameMessages.RenameInformationPopup_snap_bottom_right);
            manager.add(subMenuManager);

            IAction prefsAction = new Action(RenameMessages.RenameInformationPopup_preferences) {
                @Override
                public void run() {
                    fRenameLinkedMode.cancel();
                    String linkedModePrefPageID = "org.eclipse.ui.editors.preferencePages.LinkedModePreferencePage"; //$NON-NLS-1$
                    String refactoringPrefPageID = CPluginPreferencePage.C_BASE_PREF_PAGE_ID;
                    PreferencesUtil
                            .createPreferenceDialogOn(fEditor.getSite().getShell(), refactoringPrefPageID,
                                    new String[] { linkedModePrefPageID, refactoringPrefPageID }, null)
                            .open();
                }
            };
            manager.add(prefsAction);
        }
    });
    return fMenuManager;
}