Java Code Examples for org.eclipse.swt.SWT#POP_UP
The following examples show how to use
org.eclipse.swt.SWT#POP_UP .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: FindBarDecorator.java From APICloud-Studio with GNU General Public License v3.0 | 6 votes |
void showOptions(boolean useMousePos) { Menu menu = new Menu(UIUtils.getActiveShell(), SWT.POP_UP); for (FindBarOption option : fFindBarOptions) { option.createMenuItem(menu); } Point location; if (useMousePos) { Display current = UIUtils.getDisplay(); location = current.getCursorLocation(); } else { Rectangle bounds = options.getBounds(); location = options.getParent().toDisplay(bounds.x + bounds.width / 2, bounds.y + bounds.height / 2); } menu.setLocation(location); menu.setVisible(true); }
Example 2
Source File: ClassSelectionButton.java From birt with Eclipse Public License 1.0 | 6 votes |
public ClassSelectionButton( Composite parent, int style, IMenuButtonProvider provider ) { button = new MenuButton( parent, style ); button.addSelectionListener( listener ); button.addSelectionListener( new SelectionAdapter( ) { public void widgetSelected( SelectionEvent e ) { refreshMenuItems( ); } } ); menu = new Menu( parent.getShell( ), SWT.POP_UP ); button.setDropDownMenu( menu ); setMenuButtonProvider( provider ); refresh( ); }
Example 3
Source File: DateChooser.java From nebula with Eclipse Public License 2.0 | 5 votes |
/** * Creates the header of the calendar. The header contains the label * displaying the current month and year, and the two buttons for navigation : * previous and next month. */ private void createHeader() { monthPanel = new Composite(this, SWT.NONE); GridLayoutFactory.fillDefaults().numColumns(3).spacing(HEADER_SPACING, 0).margins(HEADER_SPACING, 2).applyTo(monthPanel); GridDataFactory.fillDefaults().applyTo(monthPanel); monthPanel.addListener(SWT.MouseDown, listener); prevMonth = new Button(monthPanel, SWT.ARROW | SWT.LEFT | SWT.FLAT); prevMonth.addListener(SWT.MouseUp, listener); prevMonth.addListener(SWT.FocusIn, listener); currentMonth = new Label(monthPanel, SWT.CENTER); currentMonth.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); currentMonth.addListener(SWT.MouseDown, listener); nextMonth = new Button(monthPanel, SWT.ARROW | SWT.RIGHT | SWT.FLAT); nextMonth.addListener(SWT.MouseUp, listener); nextMonth.addListener(SWT.FocusIn, listener); monthsMenu = new Menu(getShell(), SWT.POP_UP); currentMonth.setMenu(monthsMenu); for (int i = 0; i < 12; i++) { final MenuItem item = new MenuItem(monthsMenu, SWT.PUSH); item.addListener(SWT.Selection, listener); item.setData(new Integer(i)); } monthsMenu.addListener(SWT.Show, listener); }
Example 4
Source File: ParameterExpandBar.java From gama with GNU General Public License v3.0 | 5 votes |
void onContextualMenu(final Event event) { final int x = event.x; final int y = event.y; for (int i = 0; i < itemCount; i++) { final ParameterExpandItem item = items[i]; final boolean hover = item.x <= x && x < item.x + item.width && item.y <= y && y < item.y + bandHeight; if (!hover) { continue; } if (underlyingObjects != null) { ignoreMouseUp = true; final Point p = toDisplay(x, y); final Map<String, Runnable> menuContents = underlyingObjects.handleMenu(item.getData(), p.x, p.y); if (menuContents == null) { return; } else { final Menu menu = new Menu(getShell(), SWT.POP_UP); for (final Map.Entry<String, Runnable> entry : menuContents.entrySet()) { final MenuItem menuItem = new MenuItem(menu, SWT.PUSH); menuItem.setText(entry.getKey()); menuItem.addListener(SWT.Selection, e -> entry.getValue().run()); } menu.setLocation(p.x, p.y); menu.setVisible(true); while (!menu.isDisposed() && menu.isVisible()) { if (!WorkbenchHelper.getDisplay().readAndDispatch()) { WorkbenchHelper.getDisplay().sleep(); } } menu.dispose(); } } } }
Example 5
Source File: Visualiser.java From Rel with Apache License 2.0 | 5 votes |
protected void setupPopupMenu() { Menu menuBar = new Menu(getShell(), SWT.POP_UP); new IconMenuItem(menuBar, "Disconnect", null, SWT.PUSH, e -> disconnect()); new IconMenuItem(menuBar, "Delete", null, SWT.PUSH, e -> delete()); lblTitle.setMenu(menuBar); }
Example 6
Source File: ExpressionButton.java From birt with Eclipse Public License 1.0 | 5 votes |
public ExpressionButton( Composite parent, int style, boolean allowConstant ) { button = new MenuButton( parent, style ); button.addSelectionListener( listener ); menu = new Menu( parent.getShell( ), SWT.POP_UP ); button.setDropDownMenu( menu ); setExpressionButtonProvider( new ExpressionButtonProvider( allowConstant ) ); refresh( ); }
Example 7
Source File: AnalysisToolComposite.java From ice with Eclipse Public License 1.0 | 5 votes |
/** * Creates the Menu that stores each of the available IAnalysisViews for * each of the data sources. */ private void createViewMenu() { // Instantiate viewMenu. POP_UP menus are used for context menus and // drop-downs from ToolItems. Menu menu = new Menu(this.getShell(), SWT.POP_UP); // Create the top-level of the view menu with a button for each possible // data source. for (DataSource dataSource : DataSource.values()) { // Create a disabled MenuItem with dataSource as its text. MenuItem item = new MenuItem(menu, SWT.CASCADE); item.setText(dataSource.toString()); item.setEnabled(false); // Create the sub-menu that will show the view types for this data // source. Menu subMenu = new Menu(menu); item.setMenu(subMenu); // Put the MenuItem into a Map for quick access (it will need to be // enabled/disabled depending on whether or not there are views // available for the data source. dataSourceItems.put(dataSource, item); } // Add the view ToolItem that should make the view menu appear. final ToolItem viewItem = new ToolItem(rightToolBar, SWT.DROP_DOWN); viewItem.setText("Views"); viewItem.setToolTipText("Select the view displayed below."); // We also need to add a listener to make viewMenu appear. viewItem.addListener(SWT.Selection, new ToolItemMenuListener(viewItem, menu)); return; }
Example 8
Source File: ToolbarComposite.java From nebula with Eclipse Public License 2.0 | 4 votes |
public void mouseDown(MouseEvent event) { checkWidget(); Rectangle bigArrowsBounds = new Rectangle(mArrowsBounds.x, 0, mArrowsBounds.width, CustomButton.BUTTON_HEIGHT); if (isInside(event.x, event.y, bigArrowsBounds)) { GC gc = new GC(this); Rectangle rect = new Rectangle(mArrowsBounds.x - mSettings.getToolBarLeftSpacer(), 0, mArrowsBounds.width + mSettings.getToolBarRightSpacer(), CustomButton.BUTTON_HEIGHT); mButtonPainter.paintBackground(gc, mColorManager, mSettings, rect, false, true); gc.drawImage(mArrowImage, mArrowsBounds.x, mArrowsBounds.y); gc.dispose(); Menu mainMenu = new Menu(Display.getDefault().getActiveShell(), SWT.POP_UP); List<IMenuListener> menuListeners = mButtonComposite.getMenuListeners(); for (int i = 0; i < menuListeners.size(); i++) { menuListeners.get(i).preMenuItemsCreated(mainMenu); } MenuItem menuShowMoreButtons = new MenuItem(mainMenu, SWT.PUSH); MenuItem menuShowFewerButtons = new MenuItem(mainMenu, SWT.PUSH); menuShowFewerButtons.addListener(SWT.Selection, e -> mButtonComposite.hideNextButton()); menuShowMoreButtons.addListener(SWT.Selection, e-> mButtonComposite.showNextButton()); menuShowMoreButtons.setText(mLanguage.getShowMoreButtonsText()); menuShowFewerButtons.setText(mLanguage.getShowFewerButtonsText()); new MenuItem(mainMenu, SWT.SEPARATOR); MenuItem more = new MenuItem(mainMenu, SWT.CASCADE); more.setText(mLanguage.getAddOrRemoveButtonsText()); Menu moreMenu = new Menu(more); more.setMenu(moreMenu); List<CustomButton> cbs = mButtonComposite.getItems(); for (int i = 0; i < cbs.size(); i++) { final CustomButton cb = cbs.get(i); final MenuItem temp = new MenuItem(moreMenu, SWT.CHECK); temp.setText(cb.getText()); temp.setImage(cb.getToolBarImage()); temp.setSelection(mButtonComposite.isVisible(cb)); temp.addListener(SWT.Selection, e -> { if (mButtonComposite.isVisible(cb)) { mButtonComposite.permanentlyHideButton(cb); temp.setSelection(false); } else { mButtonComposite.permanentlyShowButton(cb); temp.setSelection(true); } }); } for (int i = 0; i < menuListeners.size(); i++) { menuListeners.get(i).postMenuItemsCreated(mainMenu); } mainMenu.setVisible(true); return; } for (int i = 0; i < mToolBarItems.size(); i++) { TBItem item = mToolBarItems.get(i); if (item.getBounds() != null) { if (isInside(event.x, event.y, item.getBounds())) { mButtonComposite.selectItemAndLoad(item.getButton()); break; } } } }
Example 9
Source File: CTree.java From nebula with Eclipse Public License 2.0 | 4 votes |
protected void handleMouseEvents(Event event) { CTreeItem item = null; if (event.widget == body) { item = getItem(event.x, event.y); } else if (event.item instanceof CTreeItem) { item = (CTreeItem) event.item; } switch (event.type) { case SWT.MouseDoubleClick: if(item != null && (selectOnToggle || !item.isToggle(event.x, event.y))) { fireSelectionEvent(true); } break; case SWT.MouseDown: if(!hasFocus) setFocus(); if(item == null) { if(event.widget == body) { item = getItem(event.x, event.y); } else if(event.item instanceof CTreeItem) { item = (CTreeItem) event.item; } } switch(event.button) { // TODO - popup menu: not just for mouse down events! case 3: Menu menu = getMenu(); if ((menu != null) && ((menu.getStyle() & SWT.POP_UP) != 0)) { menu.setVisible(true); } case 1: if(selectOnToggle || !item.isToggle(event.x, event.y)) { if(selectOnTreeToggle || !item.isTreeToggle(event.x,event.y)) { if((event.stateMask & SWT.SHIFT) != 0) { if(shiftSel == null) { if(selection.isEmpty()) selection.add(item); shiftSel = (CTreeItem) selection.get(selection.size() - 1); } setSelection(shiftSel, item); } else if((event.stateMask & SWT.CONTROL) != 0) { toggleSelection(item); shiftSel = null; } else { setSelection(item); shiftSel = null; } } } break; } break; case SWT.MouseMove: // TODO: make toggles more dynamic break; case SWT.MouseUp: if(item.isToggle(event.x,event.y)) { boolean open = item.isOpen(event.x,event.y); if(item.isTreeToggle(event.x,event.y)) { // visibleItems = null; item.setExpanded(!open); fireTreeEvent(item, !open); } else { item.getCell(event.x, event.y).setOpen(!open); } } break; } }
Example 10
Source File: ClipboardCopy.java From BiglyBT with GNU General Public License v2.0 | 4 votes |
public static void addCopyToClipMenu( final Control control, final copyToClipProvider provider ) { MouseAdapter ml = (MouseAdapter)control.getData( MOUSE_LISTENER_KEY ); if ( ml != null ){ control.removeMouseListener( ml ); } ml = new MouseAdapter() { @Override public void mouseDown( MouseEvent e ) { if ( control.isDisposed()){ return; } final String text = provider.getText(); if ( control.getMenu() != null || text == null || text.length() == 0 ){ return; } if (!(e.button == 3 || (e.button == 1 && e.stateMask == SWT.CONTROL))){ return; } final Menu menu = new Menu(control.getShell(),SWT.POP_UP); MenuItem item = new MenuItem( menu,SWT.NONE ); item.setData( MENU_ITEM_KEY, "" ); String msg_text_id; if ( provider instanceof copyToClipProvider2 ){ msg_text_id = ((copyToClipProvider2)provider).getMenuResource(); }else{ msg_text_id = "label.copy.to.clipboard"; } item.setText( MessageText.getString( msg_text_id )); item.addSelectionListener( new SelectionAdapter() { @Override public void widgetSelected( SelectionEvent arg0) { new Clipboard(control.getDisplay()).setContents(new Object[] {text}, new Transfer[] {TextTransfer.getInstance()}); } }); control.setMenu( menu ); menu.addMenuListener( new MenuAdapter() { @Override public void menuHidden( MenuEvent arg0 ) { if ( control.getMenu() == menu ){ control.setMenu( null ); } } }); menu.setVisible( true ); } }; control.setData( MOUSE_LISTENER_KEY, ml ); control.addMouseListener( ml ); }
Example 11
Source File: SWTPopupMenu.java From tuxguitar with GNU Lesser General Public License v2.1 | 4 votes |
public SWTPopupMenu(Shell shell) { super(shell, SWT.POP_UP); this.menuListener = new SWTMenuListenerManager(this); }
Example 12
Source File: Rev.java From Rel with Apache License 2.0 | 4 votes |
private void refreshMenus() { if (getMenu() != null) getMenu().dispose(); Menu menuBar = new Menu(getShell(), SWT.POP_UP); if (!isReadOnly()) model.setMenu(menuBar); // Custom relvars IconMenuItem customRelvarsItem = new IconMenuItem(menuBar, "Variables", SWT.CASCADE); customRelvarsItem.setMenu(obtainRelvarsMenu(menuBar, false)); // System relvars IconMenuItem systemRelvarsItem = new IconMenuItem(menuBar, "System variables", SWT.CASCADE); systemRelvarsItem.setMenu(obtainRelvarsMenu(menuBar, true)); // Operators OpSelector[] queryOperators = getOperators(); IconMenuItem insOperatorsItem = new IconMenuItem(menuBar, "Operators and constants", SWT.CASCADE); Menu insOperatorsMenu = new Menu(menuBar); for (int i = 0; i < queryOperators.length; i++) { OpSelector selector = queryOperators[i]; if (selector.toString() == null) new MenuItem(insOperatorsMenu, SWT.SEPARATOR); else { new IconMenuItem(insOperatorsMenu, selector.getMenuTitle(), null, SWT.PUSH, e -> { Point lastMousePosition = model.getLastMousePosition(); obtainOperatorForKind(selector.toString(), selector.toString() + getUniqueNumber(), lastMousePosition.x, lastMousePosition.y); }); } } insOperatorsItem.setMenu(insOperatorsMenu); new IconMenuItem(menuBar, "Refresh", null, SWT.PUSH, e -> refreshMenus()); new IconMenuItem(menuBar, "Clear", null, SWT.PUSH, e -> { if (!MessageDialog.openConfirm(getShell(), "Rev", "Remove everything from this query?")) return; model.removeEverything(); }); }
Example 13
Source File: SplitButton.java From nebula with Eclipse Public License 2.0 | 3 votes |
/** * Constructs a new instance of this class given its parent * and a style value describing its behavior and appearance. * <p> * The style value is either one of the style constants defined in * class <code>SWT</code> which is applicable to instances of this * class, or must be built by <em>bitwise OR</em>'ing together * (that is, using the <code>int</code> "|" operator) two or more * of those <code>SWT</code> style constants. The class description * lists the style constants that are applicable to the class. * Style bits are also inherited from superclasses. * </p> * * @param parent a composite control which will be the parent of the new instance (cannot be null) * @param style the style of control to construct * * @exception IllegalArgumentException * <ul> * <li>ERROR_NULL_ARGUMENT - if the parent is null</li> * </ul> * @exception SWTException * <ul> * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent</li> * <li>ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass</li> * </ul> * * @see SWT#PUSH * @see SWT#TOGGLE * @see Widget#getStyle */ public SplitButton(final Composite parent, final int style) { super(parent, checkStyle(style)); setText(""); //$NON-NLS-1$ addPaintListener(); addMouseDownListener(); menu = new Menu(getShell(), SWT.POP_UP); }