public interface IContributionManager
A contribution manager keeps track of a list of contribution items. Each contribution item may has an optional identifier, which can be used to retrieve items from a manager, and for positioning items relative to each other. The list of contribution items can be subdivided into named groups using special contribution items that serve as group markers.
The IContributionManager
interface provides general
protocol for adding, removing, and retrieving contribution items.
It also provides convenience methods that make it convenient
to contribute actions. This interface should be implemented
by all objects that wish to manage contributions.
There are several implementions of this interface in this package,
including ones for menus (
),
tool bars (MenuManager
),
and status lines (ToolBarManager
).
StatusLineManager
Modifier and Type | Method and Description |
---|---|
void |
add(IAction action)
Adds an action as a contribution item to this manager.
|
void |
add(IContributionItem item)
Adds a contribution item to this manager.
|
void |
appendToGroup(String groupName,
IAction action)
Adds a contribution item for the given action at the end of the group
with the given name.
|
void |
appendToGroup(String groupName,
IContributionItem item)
Adds a contribution item to this manager at the end of the group
with the given name.
|
IContributionItem |
find(String id)
Finds the contribution item with the given id.
|
IContributionItem[] |
getItems()
Returns all contribution items known to this manager.
|
IContributionManagerOverrides |
getOverrides()
Returns the overrides for the items of this manager.
|
void |
insertAfter(String id,
IAction action)
Inserts a contribution item for the given action after the item
with the given id.
|
void |
insertAfter(String id,
IContributionItem item)
Inserts a contribution item after the item with the given id.
|
void |
insertBefore(String id,
IAction action)
Inserts a contribution item for the given action before the item
with the given id.
|
void |
insertBefore(String id,
IContributionItem item)
Inserts a contribution item before the item with the given id.
|
boolean |
isDirty()
Returns whether the list of contributions has recently changed and
has yet to be reflected in the corresponding widgets.
|
boolean |
isEmpty()
Returns whether this manager has any contribution items.
|
void |
markDirty()
Marks this contribution manager as dirty.
|
void |
prependToGroup(String groupName,
IAction action)
Adds a contribution item for the given action at the beginning of the
group with the given name.
|
void |
prependToGroup(String groupName,
IContributionItem item)
Adds a contribution item to this manager at the beginning of the
group with the given name.
|
IContributionItem |
remove(IContributionItem item)
Removes the given contribution item from the contribution items
known to this manager.
|
IContributionItem |
remove(String id)
Removes and returns the contribution item with the given id from this manager.
|
void |
removeAll()
Removes all contribution items from this manager.
|
void |
update(boolean force)
Updates this manager's underlying widget(s) with any changes which
have been made to it or its items.
|
void add(IAction action)
add(new ActionContributionItem(action))
.action
- the action, this cannot be null
void add(IContributionItem item)
item
- the contribution item, this cannot be null
void appendToGroup(String groupName, IAction action)
appendToGroup(groupName,new ActionContributionItem(action))
.groupName
- the name of the groupaction
- the actionIllegalArgumentException
- if there is no group with
the given namevoid appendToGroup(String groupName, IContributionItem item)
groupName
- the name of the groupitem
- the contribution itemIllegalArgumentException
- if there is no group with
the given nameIContributionItem find(String id)
id
- the contribution item idnull
if
no item with the given id can be foundIContributionItem[] getItems()
IContributionManagerOverrides getOverrides()
void insertAfter(String id, IAction action)
insertAfter(id,new ActionContributionItem(action))
.id
- the contribution item idaction
- the action to insertIllegalArgumentException
- if there is no item with
the given idvoid insertAfter(String id, IContributionItem item)
id
- the contribution item iditem
- the contribution item to insertIllegalArgumentException
- if there is no item with
the given idvoid insertBefore(String id, IAction action)
insertBefore(id,new ActionContributionItem(action))
.id
- the contribution item idaction
- the action to insertIllegalArgumentException
- if there is no item with
the given idvoid insertBefore(String id, IContributionItem item)
id
- the contribution item iditem
- the contribution item to insertIllegalArgumentException
- if there is no item with
the given idboolean isDirty()
true
if this manager is dirty, and false
if it is up-to-dateboolean isEmpty()
true
if there are no items, and
false
otherwisevoid markDirty()
void prependToGroup(String groupName, IAction action)
prependToGroup(groupName,new ActionContributionItem(action))
.groupName
- the name of the groupaction
- the actionIllegalArgumentException
- if there is no group with
the given namevoid prependToGroup(String groupName, IContributionItem item)
groupName
- the name of the groupitem
- the contribution itemIllegalArgumentException
- if there is no group with
the given nameIContributionItem remove(String id)
null
if this manager has no contribution items
with the given id.id
- the contribution item idnull
if noneIContributionItem remove(IContributionItem item)
item
- the contribution itemitem
parameter if the item was removed,
and null
if it was not foundvoid removeAll()
Note: The items will not get disposed.
void update(boolean force)
force
- true
means update even if not dirty,
and false
for normal incremental updating
Copyright (c) 2000, 2015 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.