Class DefaultGraphCell

All Implemented Interfaces:
Serializable, Cloneable, MutableTreeNode, TreeNode, GraphCell
Direct Known Subclasses:
DefaultEdge, DefaultPort

public class DefaultGraphCell extends DefaultMutableTreeNode implements GraphCell, Cloneable
The default implementation for the GraphCell interface.
See Also:
  • Field Details

    • attributes

      protected AttributeMap attributes
      Hashtable for properties. Initially empty
  • Constructor Details

    • DefaultGraphCell

      public DefaultGraphCell()
      Creates an empty cell.
    • DefaultGraphCell

      public DefaultGraphCell(Object userObject)
      Creates a graph cell and initializes it with the specified user object.
      Parameters:
      userObject - an Object provided by the user that constitutes the cell's data
    • DefaultGraphCell

      public DefaultGraphCell(Object userObject, AttributeMap storageMap)
      Constructs a cell that holds a reference to the specified user object and contains the specified array of children and sets default values for the bounds attribute.
      Parameters:
      userObject - reference to the user object
      storageMap - the storage attribute map for this cell
    • DefaultGraphCell

      public DefaultGraphCell(Object userObject, AttributeMap storageMap, MutableTreeNode[] children)
      Creates a graph cell and initializes it with the specified user object. The GraphCell allows children only if specified.
      Parameters:
      userObject - an Object provided by the user that constitutes the cell's data
      storageMap - the storage attribute map for this cell
      children - array of children
  • Method Details

    • getChildren

      public List getChildren()
      Provides access to the children list to change ordering. This method returns a Collections.EMPTY_LIST if the list of childrenpoints to null.
    • getAttributes

      public AttributeMap getAttributes()
      Returns the properies of the cell.
      Specified by:
      getAttributes in interface GraphCell
    • changeAttributes

      public Map changeAttributes(Map change)
      Deprecated.
      Use getAttributes().applyMap
      Changes the attributes of the cell.
      Specified by:
      changeAttributes in interface GraphCell
    • setAttributes

      public void setAttributes(AttributeMap attributes)
      Sets the attributes.
      Specified by:
      setAttributes in interface GraphCell
      Parameters:
      attributes - The attributes to set
    • addPort

      public Object addPort()
      Utility method to create a port for this cell. This method adds a floating port.
      Returns:
      the port created
    • addPort

      public Object addPort(Point2D offset)
      Utility method to create a port for this cell. The method adds a port at a fixed relative offset within the cell. If the offset is null then a floating port is added.
      Parameters:
      offset - the offset of the port within the cell
      Returns:
      the port created
    • addPort

      public Object addPort(Point2D offset, Object userObject)
      Utility method to create a port for this cell. The method adds a port at a fixed relative offset within the cell. If the offset is null then a floating port is added.
      Parameters:
      offset - the offset of the port within the cell
      userObject - the user object of the port cell
      Returns:
      the port created
    • clone

      public Object clone()
      Create a clone of the cell. This method uses the superclass implementation (which does not clone the children), then uses clone on the attribute map. This method does not clone the user object. You should override the cloneUserObject in the graph model to implement cloning of custom user objects.
      Overrides:
      clone in class DefaultMutableTreeNode
      Returns:
      Object a clone of this object.