Class PopupMenu

java.lang.Object
org.eclipse.graphiti.ui.internal.util.ui.PopupMenu

public class PopupMenu extends Object
A simple pop-up menu with a list from which the user can select one item.

The show() method returns false if the user cancelled the gesture or clicked outside the popup.

The getResult() method returns the result which is the object from the content list that the user selected, or in the case of cascading menus, a list of the results from each popup.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    An instance of this class can be created to add a submenu to a menu item in a PopupMenu.
  • Constructor Summary

    Constructors
    Constructor
    Description
    PopupMenu(List<?> aContent, org.eclipse.jface.viewers.ILabelProvider aLabelProvider)
    Creates a new PopupMenu.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    createMenuItems(org.eclipse.swt.widgets.Menu parentMenu, PopupMenu rootMenu, List<Object> resultThusFar)
    Creates the menu items based on the content list.
    protected List<?>
    Gets the content.
    protected org.eclipse.jface.viewers.ILabelProvider
    Gets the labelProvider.
    Gets the result which is the object from the content list that the user selected, or in the case of cascading menus, a list of the results from each popup.
    void
    setContent(List<?> aContent)
    Sets the content.
    void
    setLabelProvider(org.eclipse.jface.viewers.ILabelProvider aLabelProvider)
    Sets the labelProvider.
    protected void
    setResult(List<Object> aResultList)
    Sets the resultList.
    boolean
    show(org.eclipse.swt.widgets.Control parent)
    Shows the popup menu and sets the resultList selected by the user.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • PopupMenu

      public PopupMenu(List<?> aContent, org.eclipse.jface.viewers.ILabelProvider aLabelProvider)
      Creates a new PopupMenu.
      Parameters:
      aContent - the content for the menu, each object in the list represents a menu item
      aLabelProvider - the label provider used to provide the text for each object in the content list
  • Method Details

    • show

      public boolean show(org.eclipse.swt.widgets.Control parent)
      Shows the popup menu and sets the resultList selected by the user.
      Parameters:
      parent - menu will be shown in this parent Control
      Returns:
      true if this succeeded, false otherwise (e.g. if the user cancelled the gesture).
    • createMenuItems

      protected void createMenuItems(org.eclipse.swt.widgets.Menu parentMenu, PopupMenu rootMenu, List<Object> resultThusFar)
      Creates the menu items based on the content list.
      Parameters:
      parentMenu - the parent Menu that the menu items will be created in
      rootMenu - the root level Menu
      resultThusFar - List of content objects, e.g. CascadingMenu objects
    • getContent

      protected List<?> getContent()
      Gets the content.
      Returns:
      Returns the content.
    • setContent

      public void setContent(List<?> aContent)
      Sets the content.
      Parameters:
      aContent - The content of this menu. Each entry in the list becomes a menu item.
    • getLabelProvider

      protected org.eclipse.jface.viewers.ILabelProvider getLabelProvider()
      Gets the labelProvider.
      Returns:
      Returns the labelProvider.
    • setLabelProvider

      public void setLabelProvider(org.eclipse.jface.viewers.ILabelProvider aLabelProvider)
      Sets the labelProvider.
      Parameters:
      aLabelProvider - Provides the text and icon for each menu item.
    • getResult

      public Object getResult()
      Gets the result which is the object from the content list that the user selected, or in the case of cascading menus, a list of the results from each popup.
      Returns:
      Returns the resultList.
    • setResult

      protected void setResult(List<Object> aResultList)
      Sets the resultList.
      Parameters:
      aResultList - The resultList to set.