Class AttributeTreeRecord

java.lang.Object
com.pixelmed.dicom.AttributeTreeRecord
All Implemented Interfaces:
Comparable, TreeNode

public class AttributeTreeRecord extends Object implements Comparable, TreeNode

Instances of the AttributeTreeRecord class represent nodes in a tree of the AttributeTree class, which in turn is used by the AttributeTreeBrowser class.

Each record represents a single attribute.

  • Constructor Details

    • AttributeTreeRecord

      public AttributeTreeRecord(AttributeTreeRecord p, Attribute a, DicomDictionary d)

      Construct a record for an attribute.

      Parameters:
      p - parent record
      a - attribute to add
      d - dictionary for looking up the name
    • AttributeTreeRecord

      public AttributeTreeRecord(AttributeTreeRecord p, int ic)

      Construct a record for an item of a sequence attribute.

      Parameters:
      p - parent record
      ic - which item (numbered from 0)
  • Method Details

    • toString

      public String toString()

      Dump the record as a string.

      Overrides:
      toString in class Object
      Returns:
      the attribute tag, name and value(s) as a string
    • compareTo

      public int compareTo(Object o)
      Specified by:
      compareTo in interface Comparable
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • getParent

      public TreeNode getParent()

      Returns the parent node of this node.

      Specified by:
      getParent in interface TreeNode
      Returns:
      the parent node, or null if the root
    • getChildAt

      public TreeNode getChildAt(int index)

      Returns the child at the specified index.

      Specified by:
      getChildAt in interface TreeNode
      Parameters:
      index - the index of the child to be returned, numbered from 0
      Returns:
      the child TreeNode at the specified index
    • getIndex

      public int getIndex(TreeNode child)

      Returns the index of the specified child from amongst this node's children, if present.

      Specified by:
      getIndex in interface TreeNode
      Parameters:
      child - the child to search for amongst this node's children
      Returns:
      the index of the child, or -1 if not present
    • getAllowsChildren

      public boolean getAllowsChildren()

      Always returns true, since children may always be added.

      Specified by:
      getAllowsChildren in interface TreeNode
      Returns:
      always true
    • isLeaf

      public boolean isLeaf()

      Returns true if the receiver is a leaf (has no children).

      Specified by:
      isLeaf in interface TreeNode
      Returns:
      true if the receiver is a leaf
    • getChildCount

      public int getChildCount()

      Return the number of children that this node contains.

      Specified by:
      getChildCount in interface TreeNode
      Returns:
      the number of children, 0 if none
    • children

      public Enumeration children()

      Returns the children of this node as an Enumeration.

      Specified by:
      children in interface TreeNode
      Returns:
      the children of this node
    • addChild

      public void addChild(AttributeTreeRecord child)

      Add a child node to the current node, keeping the children sorted.

      Parameters:
      child - the child to add
    • removeChild

      public void removeChild(AttributeTreeRecord child)
      Parameters:
      child - the child to remove
    • removeAllChildren

      public void removeAllChildren()

      Remove all child nodes.

    • addSibling

      public void addSibling(AttributeTreeRecord sibling) throws DicomException

      Add a sibling to the current node, keeping the children sorted.

      Parameters:
      sibling - the sibling to add
      Throws:
      DicomException - if attempt to add sibling to node without parent
    • getAttribute

      public Attribute getAttribute()

      Get the attribute corresponding to this record.

      Returns:
      the attribute
    • getItemCount

      public int getItemCount()

      Get the number of items in a Sequence attribute record.

      Returns:
      the number of items
    • setSortByName

      public void setSortByName(boolean sortByName)

      Set the sort order to be alphabetical by attribute name, or numerical by group and element tag.

      Parameters:
      sortByName - true if sort alphabetically by attribute name