Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse Platform
Release 3.5

org.eclipse.jface.action
Class ContributionManager

java.lang.Object
  extended by 
org.eclipse.jface.action.ContributionManager
All Implemented Interfaces:
IContributionManager
Direct Known Subclasses:
CoolBarManager, MenuManager, StatusLineManager, ToolBarManager

public abstract class ContributionManager
extends Object
implements IContributionManager

Abstract base class for all contribution managers, and standard implementation of IContributionManager. This class provides functionality common across the specific managers defined by this framework.

This class maintains a list of contribution items and a dirty flag, both as internal state. In addition to providing implementations of most IContributionManager methods, this class automatically coalesces adjacent separators, hides beginning and ending separators, and deals with dynamically changing sets of contributions. When the set of contributions does change dynamically, the changes are propagated to the control via the update method, which subclasses must implement.

Note: A ContributionItem cannot be shared between different ContributionManagers.


Constructor Summary
protected ContributionManager ()
          Creates a new contribution manager.
 
Method Summary
 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.
protected  boolean allowItem ( IContributionItem itemToAdd)
          This method allows subclasses of ContributionManager to prevent certain items in the contributions list.
 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.
protected  void dumpStatistics ()
          Internal debug method for printing statistics about this manager to System.out.
  IContributionItem find ( String id)
          Finds the contribution item with the given id.
  IContributionItem[] getItems ()
          Returns all contribution items known to this manager.
  IContributionManagerOverrides getOverrides ()
          The ContributionManager implementation of this method declared on IContributionManager returns the current overrides.
 int getSize ()
          Return the number of contributions in this manager.
protected  boolean hasDynamicItems ()
          Returns whether this contribution manager contains dynamic items.
protected  int indexOf ( IContributionItem item)
          Returns the index of the object in the internal structure.
 int indexOf ( String id)
          Returns the index of the item with the given id.
 void insert (int index, IContributionItem item)
          Insert the item at the given index.
 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.
protected  void internalSetItems ( IContributionItem[] items)
          An internal method for setting the order of the contribution items.
 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.
protected  void itemAdded ( IContributionItem item)
          The given item was added to the list of contributions.
protected  void itemRemoved ( IContributionItem item)
          The given item was removed from the list of contributions.
 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.
 boolean replaceItem ( String identifier, IContributionItem replacementItem)
          Replaces the item of the given identifier with another contribution item.
protected  void setDirty (boolean dirty)
          Sets whether this manager is dirty.
 void setOverrides ( IContributionManagerOverrides newOverrides)
          Sets the overrides for this contribution manager
 
Methods inherited from class java.lang. Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.jface.action. IContributionManager
update
 

Constructor Detail

ContributionManager

protected ContributionManager()
Creates a new contribution manager.

Method Detail

add

public void add(
IAction action)
Description copied from interface: IContributionManager
Adds an action as a contribution item to this manager. Equivalent to add(new ActionContributionItem(action)).

Specified by:
add in interface IContributionManager
Parameters:
action - the action, this cannot be null

add

public void add(
IContributionItem item)
Description copied from interface: IContributionManager
Adds a contribution item to this manager.

Specified by:
add in interface IContributionManager
Parameters:
item - the contribution item, this cannot be null

appendToGroup

public void appendToGroup(
String groupName,
                          
IAction action)
Description copied from interface: IContributionManager
Adds a contribution item for the given action at the end of the group with the given name. Equivalent to appendToGroup(groupName,new ActionContributionItem(action)).

Specified by:
appendToGroup in interface IContributionManager
Parameters:
groupName - the name of the group
action - the action

appendToGroup

public void appendToGroup(
String groupName,
                          
IContributionItem item)
Description copied from interface: IContributionManager
Adds a contribution item to this manager at the end of the group with the given name.

Specified by:
appendToGroup in interface IContributionManager
Parameters:
groupName - the name of the group
item - the contribution item

allowItem

protected boolean allowItem(
IContributionItem itemToAdd)
This method allows subclasses of ContributionManager to prevent certain items in the contributions list. ContributionManager will either block or allow an addition based on the result of this method call. This can be used to prevent duplication, for example.

Parameters:
itemToAdd - The contribution item to be added; may be null.
Returns:
true if the addition should be allowed; false otherwise. The default implementation allows all items.
Since:
3.0

dumpStatistics

protected void dumpStatistics()
Internal debug method for printing statistics about this manager to System.out.


find

public 
IContributionItem find(
String id)
Description copied from interface: IContributionManager
Finds the contribution item with the given id.

Specified by:
find in interface IContributionManager
Parameters:
id - the contribution item id
Returns:
the contribution item, or null if no item with the given id can be found

getItems

public 
IContributionItem[] getItems()
Description copied from interface: IContributionManager
Returns all contribution items known to this manager.

Specified by:
getItems in interface IContributionManager
Returns:
a list of contribution items

getSize

public int getSize()
Return the number of contributions in this manager.

Returns:
the number of contributions in this manager
Since:
3.3

getOverrides

public 
IContributionManagerOverrides getOverrides()
The ContributionManager implementation of this method declared on IContributionManager returns the current overrides. If there is no overrides it lazily creates one which overrides no item state.

Specified by:
getOverrides in interface IContributionManager
Returns:
the overrides for the items of this manager
Since:
2.0

hasDynamicItems

protected boolean hasDynamicItems()
Returns whether this contribution manager contains dynamic items. A dynamic contribution item contributes items conditionally, dependent on some internal state.

Returns:
true if this manager contains dynamic items, and false otherwise

indexOf

public int indexOf(
String id)
Returns the index of the item with the given id.

Parameters:
id - The id of the item whose index is requested.
Returns:
int the index or -1 if the item is not found

indexOf

protected int indexOf(
IContributionItem item)
Returns the index of the object in the internal structure. This is different from indexOf(String id) since some contribution items may not have an id.

Parameters:
item - The contribution item
Returns:
the index, or -1 if the item is not found
Since:
3.0

insert

public void insert(int index,
                   
IContributionItem item)
Insert the item at the given index.

Parameters:
index - The index to be used for insertion
item - The item to be inserted

insertAfter

public void insertAfter(
String ID,
                        
IAction action)
Description copied from interface: IContributionManager
Inserts a contribution item for the given action after the item with the given id. Equivalent to insertAfter(id,new ActionContributionItem(action)).

Specified by:
insertAfter in interface IContributionManager
Parameters:
ID - the contribution item id
action - the action to insert

insertAfter

public void insertAfter(
String ID,
                        
IContributionItem item)
Description copied from interface: IContributionManager
Inserts a contribution item after the item with the given id.

Specified by:
insertAfter in interface IContributionManager
Parameters:
ID - the contribution item id
item - the contribution item to insert

insertBefore

public void insertBefore(
String ID,
                         
IAction action)
Description copied from interface: IContributionManager
Inserts a contribution item for the given action before the item with the given id. Equivalent to insertBefore(id,new ActionContributionItem(action)).

Specified by:
insertBefore in interface IContributionManager
Parameters:
ID - the contribution item id
action - the action to insert

insertBefore

public void insertBefore(
String ID,
                         
IContributionItem item)
Description copied from interface: IContributionManager
Inserts a contribution item before the item with the given id.

Specified by:
insertBefore in interface IContributionManager
Parameters:
ID - the contribution item id
item - the contribution item to insert

isDirty

public boolean isDirty()
Description copied from interface: IContributionManager
Returns whether the list of contributions has recently changed and has yet to be reflected in the corresponding widgets.

Specified by:
isDirty in interface IContributionManager
Returns:
true if this manager is dirty, and false if it is up-to-date

isEmpty

public boolean isEmpty()
Description copied from interface: IContributionManager
Returns whether this manager has any contribution items.

Specified by:
isEmpty in interface IContributionManager
Returns:
true if there are no items, and false otherwise

itemAdded

protected void itemAdded(
IContributionItem item)
The given item was added to the list of contributions. Marks the manager as dirty and updates the number of dynamic items, and the memento.

Parameters:
item - the item to be added

itemRemoved

protected void itemRemoved(
IContributionItem item)
The given item was removed from the list of contributions. Marks the manager as dirty and updates the number of dynamic items.

Parameters:
item - remove given parent from list of contributions

markDirty

public void markDirty()
Description copied from interface: IContributionManager
Marks this contribution manager as dirty.

Specified by:
markDirty in interface IContributionManager

prependToGroup

public void prependToGroup(
String groupName,
                           
IAction action)
Description copied from interface: IContributionManager
Adds a contribution item for the given action at the beginning of the group with the given name. Equivalent to prependToGroup(groupName,new ActionContributionItem(action)).

Specified by:
prependToGroup in interface IContributionManager
Parameters:
groupName - the name of the group
action - the action

prependToGroup

public void prependToGroup(
String groupName,
                           
IContributionItem item)
Description copied from interface: IContributionManager
Adds a contribution item to this manager at the beginning of the group with the given name.

Specified by:
prependToGroup in interface IContributionManager
Parameters:
groupName - the name of the group
item - the contribution item

remove

public 
IContributionItem remove(
String ID)
Description copied from interface: IContributionManager
Removes and returns the contribution item with the given id from this manager. Returns null if this manager has no contribution items with the given id.

Specified by:
remove in interface IContributionManager
Parameters:
ID - the contribution item id
Returns:
the item that was found and removed, or null if none

remove

public 
IContributionItem remove(
IContributionItem item)
Description copied from interface: IContributionManager
Removes the given contribution item from the contribution items known to this manager.

Specified by:
remove in interface IContributionManager
Parameters:
item - the contribution item
Returns:
the item parameter if the item was removed, and null if it was not found

removeAll

public void removeAll()
Description copied from interface: IContributionManager
Removes all contribution items from this manager.

Specified by:
removeAll in interface IContributionManager

replaceItem

public boolean replaceItem(
String identifier,
                           
IContributionItem replacementItem)
Replaces the item of the given identifier with another contribution item. This can be used, for example, to replace large contribution items with placeholders to avoid memory leaks. If the identifier cannot be found in the current list of items, then this does nothing. If multiple occurrences are found, then the replacement items is put in the first position and the other positions are removed.

Parameters:
identifier - The identifier to look for in the list of contributions; should not be null.
replacementItem - The contribution item to replace the old item; must not be null. Use remove if that is what you want to do.
Returns:
true if the given identifier can be;
Since:
3.0

setDirty

protected void setDirty(boolean dirty)
Sets whether this manager is dirty. When dirty, the list of contributions is not accurately reflected in the corresponding widgets.

Parameters:
dirty - true if this manager is dirty, and false if it is up-to-date

setOverrides

public void setOverrides(
IContributionManagerOverrides newOverrides)
Sets the overrides for this contribution manager

Parameters:
newOverrides - the overrides for the items of this manager
Since:
2.0

internalSetItems

protected void internalSetItems(
IContributionItem[] items)
An internal method for setting the order of the contribution items.

Parameters:
items - the contribution items in the specified order
Since:
3.0

Eclipse Platform
Release 3.5

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire