Class DefaultTreeModel

  • All Implemented Interfaces:
    com.globalmentor.beans.PropertyBindable, com.globalmentor.beans.PropertyConstrainable, ActionListenable, ActionModel, Model, TreeModel

    public class DefaultTreeModel
    extends AbstractModel
    implements TreeModel
    A default implementation of a tree model. If no root node is specified, the root node will be a dummy root node that will not be displayed. If a dummy root node is used, it will automatically be set to an expanded state.
    Author:
    Garret Wilson
    See Also:
    DummyTreeNodeModel
    • Field Summary

      • Fields inherited from class com.globalmentor.beans.BoundPropertyObject

        NO_PROPERTY_CHANGE_LISTENERS, NO_VETOABLE_CHANGE_LISTENERS
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addActionListener​(ActionListener actionListener)
      Adds an action listener.
      protected void fireActionPerformed​(int force, int option)
      Fires an action event to all registered action listeners.
      protected void fireActionPerformed​(ActionEvent actionEvent)
      Fires a given action event to all registered action listeners.
      java.lang.Iterable<ActionListener> getActionListeners()  
      TreeNodeModel<?> getRootNode()  
      void performAction()
      Performs the action with default force and default option.
      void performAction​(int force, int option)
      Performs the action with the given force and option.
      void removeActionListener​(ActionListener actionListener)
      Removes an action listener.
      void setAllExpanded​(boolean newAllExpanded)
      Sets whether all tree nodes are expanded.
      void setRootNode​(TreeNodeModel<?> newRootNode)
      Sets the root node of the tree model.
      • Methods inherited from class com.globalmentor.beans.BoundPropertyObject

        addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, createPostponedPropertyChangeEvent, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, getForwardPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeSupport, getRepeatPropertyChangeListener, getRepeatVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, getVetoableChangeSupport, hasPropertyChangeListeners, hasVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface com.globalmentor.beans.PropertyBindable

        addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, hasPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
      • Methods inherited from interface com.globalmentor.beans.PropertyConstrainable

        addVetoableChangeListener, addVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, hasVetoableChangeListeners, removeVetoableChangeListener, removeVetoableChangeListener
    • Constructor Detail

      • DefaultTreeModel

        public DefaultTreeModel()
        Default constructor with a dummy root tree node.
      • DefaultTreeModel

        public DefaultTreeModel​(TreeNodeModel<?> rootNode)
        Root node constructor.
        Parameters:
        rootNode - The root node of the tree model.
        Throws:
        java.lang.NullPointerException - if the given root node is null.
    • Method Detail

      • setAllExpanded

        public void setAllExpanded​(boolean newAllExpanded)
        Description copied from interface: TreeModel
        Sets whether all tree nodes are expanded. This method delegates to the root node TreeNodeModel.setAllExpanded(boolean).
        Specified by:
        setAllExpanded in interface TreeModel
        Parameters:
        newAllExpanded - true if all the nodes should be expanded, or false if they should be collapsed.
      • performAction

        public void performAction​(int force,
                                  int option)
        Description copied from interface: ActionModel
        Performs the action with the given force and option. An ActionEvent is fired to all registered ActionListeners.
        Specified by:
        performAction in interface ActionModel
        Parameters:
        force - The zero-based force, such as 0 for no force or 1 for an action initiated by from a mouse single click.
        option - The zero-based option, such as 0 for an event initiated by a mouse left button click or 1 for an event initiated by a mouse right button click.
      • fireActionPerformed

        protected void fireActionPerformed​(int force,
                                           int option)
        Fires an action event to all registered action listeners. This method delegates to fireActionPerformed(ActionEvent).
        Parameters:
        force - The zero-based force, such as 0 for no force or 1 for an action initiated by from a mouse single click.
        option - The zero-based option, such as 0 for an event initiated by a mouse left button click or 1 for an event initiaged by a mouse right button click.
        See Also:
        ActionListener, ActionEvent
      • fireActionPerformed

        protected void fireActionPerformed​(ActionEvent actionEvent)
        Fires a given action event to all registered action listeners.
        Parameters:
        actionEvent - The action event to fire.