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 Details

    • PRE_ORDER

      public static final int PRE_ORDER
      Pre-order traversal means visit the root first, then the children.
      See Also:
    • POST_ORDER

      public static final int POST_ORDER
      Post-order means visit the children, and then the root.
      See Also:
  • Constructor Details

    • 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 character
      rootNode - the root node.
      Since:
      3.4
  • Method Details

    • 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 path
      node - the node to add
      Returns:
      true if the add was successful, and false if 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 implement IPreferenceNode
    • 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 node
      sequence - a read-write list of preference nodes (element type: IPreferenceNode) in the given order
      order - the traversal order, one of PRE_ORDER and POST_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 null if 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 path
      top - top at the given path
      Returns:
      the node, or null if 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 of PRE_ORDER and POST_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 null if 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:
      true if the node was removed, and false otherwise
    • removeAll

      public void removeAll()
      Removes all contribution nodes known to this manager.