Package org.eclipse.jface.preference
Class PreferenceManager
- java.lang.Object
-
- org.eclipse.jface.preference.PreferenceManager
-
public class PreferenceManager extends Object
A preference manager maintains a hierarchy of preference nodes and associated preference pages.
-
-
Field Summary
Fields Modifier and Type Field Description static intPOST_ORDERPost-order means visit the children, and then the root.static intPRE_ORDERPre-order traversal means visit the root first, then the children.
-
Constructor Summary
Constructors Constructor Description PreferenceManager()Creates a new preference manager.PreferenceManager(char separatorChar)Creates a new preference manager with the given path separator.PreferenceManager(char separatorChar, PreferenceNode rootNode)Creates a new preference manager with the given path separator and root node.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddTo(String path, IPreferenceNode node)Adds the given preference node as a subnode of the node at the given path.voidaddToRoot(IPreferenceNode node)Adds the given preference node as a subnode of the root.protected voidbuildSequence(IPreferenceNode node, List<IPreferenceNode> sequence, int order)Recursively enumerates all nodes at or below the given node and adds them to the given list in the given order.IPreferenceNodefind(String path)Finds and returns the contribution node at the given path.protected IPreferenceNodefind(String path, IPreferenceNode top)Finds and returns the preference node directly below the top at the given path.List<IPreferenceNode>getElements(int order)Returns all preference nodes managed by this manager.protected IPreferenceNodegetRoot()Returns the root node.IPreferenceNode[]getRootSubNodes()Returns the root level nodes of this preference manager.IPreferenceNoderemove(String path)Removes the preference node at the given path.booleanremove(IPreferenceNode node)Removes the given preference node if it is managed by this contribution manager.voidremoveAll()Removes all contribution nodes known to this manager.
-
-
-
Field Detail
-
PRE_ORDER
public static final int PRE_ORDER
Pre-order traversal means visit the root first, then the children.- See Also:
- Constant Field Values
-
POST_ORDER
public static final int POST_ORDER
Post-order means visit the children, and then the root.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PreferenceManager
public PreferenceManager()
Creates a new preference manager.
-
PreferenceManager
public PreferenceManager(char separatorChar)
Creates a new preference manager with the given path separator.- Parameters:
separatorChar- preference node separator
-
PreferenceManager
public PreferenceManager(char separatorChar, PreferenceNode rootNode)Creates a new preference manager with the given path separator and root node.- Parameters:
separatorChar- the separator characterrootNode- the root node.- Since:
- 3.4
-
-
Method Detail
-
addTo
public boolean addTo(String path, IPreferenceNode node)
Adds the given preference node as a subnode of the node at the given path.- Parameters:
path- the pathnode- the node to add- Returns:
trueif the add was successful, andfalseif there is no contribution at the given path
-
addToRoot
public void addToRoot(IPreferenceNode node)
Adds the given preference node as a subnode of the root.- Parameters:
node- the node to add, which must implementIPreferenceNode
-
buildSequence
protected void buildSequence(IPreferenceNode node, List<IPreferenceNode> sequence, int order)
Recursively enumerates all nodes at or below the given node and adds them to the given list in the given order.- Parameters:
node- the starting nodesequence- a read-write list of preference nodes (element type:IPreferenceNode) in the given orderorder- the traversal order, one ofPRE_ORDERandPOST_ORDER
-
find
public IPreferenceNode find(String path)
Finds and returns the contribution node at the given path.- Parameters:
path- the path- Returns:
- the node, or
nullif none
-
find
protected IPreferenceNode find(String path, IPreferenceNode top)
Finds and returns the preference node directly below the top at the given path.- Parameters:
path- the pathtop- top at the given path- Returns:
- the node, or
nullif none - Since:
- 3.1
-
getElements
public List<IPreferenceNode> getElements(int order)
Returns all preference nodes managed by this manager.- Parameters:
order- the traversal order, one ofPRE_ORDERandPOST_ORDER- Returns:
- a list of preference nodes
(element type:
IPreferenceNode) in the given order
-
getRoot
protected IPreferenceNode getRoot()
Returns the root node. Note that the root node is a special internal node that is used to collect together all the nodes that have no parent; it is not given out to clients.- Returns:
- the root node
-
getRootSubNodes
public final IPreferenceNode[] getRootSubNodes()
Returns the root level nodes of this preference manager.- Returns:
- an array containing the root nodes
- Since:
- 3.2
-
remove
public IPreferenceNode remove(String path)
Removes the preference node at the given path.- Parameters:
path- the path- Returns:
- the node that was removed, or
nullif there was no node at the given path
-
remove
public boolean remove(IPreferenceNode node)
Removes the given preference node if it is managed by this contribution manager.- Parameters:
node- the node to remove- Returns:
trueif the node was removed, andfalseotherwise
-
removeAll
public void removeAll()
Removes all contribution nodes known to this manager.
-
-