Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jface.action
Interface IMenuManager

All Superinterfaces:
  IContributionItem, IContributionManager

All Known Implementing Classes:
  MenuManager, SubMenuManager

public interface IMenuManager
extends IContributionManager, IContributionItem

The `IMenuManager` interface provides protocol for managing contributions to a menu bar and its sub menus. An `IMenuManager` is also an `IContributionItem`, allowing sub-menus to be nested in parent menus.

This interface is internal to the framework; it should not be implemented outside the framework.

This package provides a concrete menu manager implementation, ``MenuManager``.

Method Summary
`void` | `addMenuListener(IMenuListener listener)` Adds a menu listener to this menu.
`IMenuManager` | `findMenuUsingPath(String path)` Finds the manager for the menu at the given path.
`IContributionItem` | `findUsingPath(String path)` Finds the contribution item at the given path.
`boolean` | `getRemoveAllWhenShown()` Returns whether all items should be removed when the menu is first shown, but before notifying menu listeners.
`boolean` | `isEnabled()` Returns whether this menu should be enabled or not.
`void` | `removeMenuListener(IMenuListener listener)` Removes the given menu listener from this menu.
`void` | `setRemoveAllWhenShown(boolean removeAll)` Sets whether all items should be removed when the menu is first shown, but before notifying menu listeners.
`void` | `updateAll(boolean force)` Incrementally builds the menu from the contribution items, and does so recursively for all submenus.

Methods inherited from interface org.eclipse.jface.action.IContributionManager
`add, add, appendToGroup, appendToGroup, find, getItems, getOverrides, insertAfter, insertAfter, insertBefore, insertBefore, isDirty, isEmpty, markDirty, prependToGroup, prependToGroup, remove, remove, removeAll, update`

Methods inherited from interface org.eclipse.jface.action.IContributionItem
`dispose, fill, fill, fill, fill, getId, isDirty, isDynamic, isGroupMarker, isSeparator, isVisible, saveWidgetState, setParent, setVisible, update, update`

Method Detail

### addMenuListener

    public void addMenuListener(IMenuListener listener)

  Adds a menu listener to this menu. Has no effect if an identical listener is already registered.

  Parameters:
    `listener` - a menu listener

### findMenuUsingPath

    public IMenuManager findMenuUsingPath(String path)

  Finds the manager for the menu at the given path. A path consists of contribution item ids separated by the separator character. The path separator character is `'/'`.

  Convenience for `findUsingPath(path)` which extracts an `IMenuManager` if possible.

  Parameters:
    `path` - the path string
  Returns:
    the menu contribution item, or `null` if there is no such contribution item or if the item does not have an associated menu manager

### findUsingPath

    public IContributionItem findUsingPath(String path)

  Finds the contribution item at the given path. A path consists of contribution item ids separated by the separator character. The path separator character is `'/'`.

  Parameters:
    `path` - the path string
  Returns:
    the contribution item, or `null` if there is no such contribution item

### getRemoveAllWhenShown

    public boolean getRemoveAllWhenShown()

  Returns whether all items should be removed when the menu is first shown, but before notifying menu listeners. The default is `false`.

  Returns:
    `true` if all items should be removed when shown, `false` if not

### isEnabled

    public boolean isEnabled()

  Returns whether this menu should be enabled or not.

  Specified by:
    `isEnabled` in interface `IContributionItem`
  Returns:
    `true` if enabled, and `false` if disabled

### removeMenuListener

    public void removeMenuListener(IMenuListener listener)

  Removes the given menu listener from this menu. Has no effect if an identical listener is not registered.

  Parameters:
    `listener` - the menu listener

### setRemoveAllWhenShown

    public void setRemoveAllWhenShown(boolean removeAll)

  Sets whether all items should be removed when the menu is first shown, but before notifying menu listeners.

  Parameters:
    `removeAll` - `true` if all items should be removed when shown, `false` if not

### updateAll

    public void updateAll(boolean force)

  Incrementally builds the menu from the contribution items, and does so recursively for all submenus.

  Parameters:
    `force` - `true` means update even if not dirty, and `false` for normal incremental updating

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.