- java.lang.Object
-
- javax.swing.text.AbstractDocument.AbstractElement
-
- All Implemented Interfaces:
Serializable,AttributeSet,Element,MutableAttributeSet,TreeNode
- Direct Known Subclasses:
AbstractDocument.BranchElement,AbstractDocument.LeafElement
- Enclosing class:
- AbstractDocument
public abstract class AbstractDocument.AbstractElement extends Object implements Element, MutableAttributeSet, Serializable, TreeNode
Implements the abstract part of an element. By default elements support attributes by having a field that represents the immutable part of the current attribute set for the element. The element itself implements MutableAttributeSet which can be used to modify the set by fetching a new immutable set. The immutable sets are provided by the AttributeContext associated with the document.Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the
java.beanspackage. Please seeXMLEncoder.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces declared in interface javax.swing.text.AttributeSet
AttributeSet.CharacterAttribute, AttributeSet.ColorAttribute, AttributeSet.FontAttribute, AttributeSet.ParagraphAttribute
-
-
Field Summary
-
Fields declared in interface javax.swing.text.AttributeSet
NameAttribute, ResolveAttribute
-
-
Constructor Summary
Constructors Constructor Description AbstractElement(Element parent, AttributeSet a)Creates a new AbstractElement.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddAttribute(Object name, Object value)Adds an attribute to the element.voidaddAttributes(AttributeSet attr)Adds a set of attributes to the element.abstract Enumeration<TreeNode>children()Returns the children of the receiver as anEnumeration.booleancontainsAttribute(Object name, Object value)Checks whether a given attribute name/value is defined.booleancontainsAttributes(AttributeSet attrs)Checks whether the element contains all the attributes.AttributeSetcopyAttributes()Copies a set of attributes.voiddump(PrintStream psOut, int indentAmount)Dumps a debugging representation of the element hierarchy.abstract booleangetAllowsChildren()Returns true if the receiver allows children.ObjectgetAttribute(Object attrName)Gets the value of an attribute.intgetAttributeCount()Gets the number of attributes that are defined.Enumeration<?>getAttributeNames()Gets the names of all attributes.AttributeSetgetAttributes()Gets the attributes for the element.TreeNodegetChildAt(int childIndex)Returns the childTreeNodeat indexchildIndex.intgetChildCount()Returns the number of childrenTreeNode's receiver contains.DocumentgetDocument()Retrieves the underlying model.abstract ElementgetElement(int index)Gets a child element.abstract intgetElementCount()Gets the number of children for the element.abstract intgetElementIndex(int offset)Gets the child element index closest to the given model offset.abstract intgetEndOffset()Gets the ending offset in the model for the element.intgetIndex(TreeNode node)Returns the index ofnodein the receivers children.StringgetName()Gets the name of the element.TreeNodegetParent()Returns the parentTreeNodeof the receiver.ElementgetParentElement()Gets the parent of the element.AttributeSetgetResolveParent()Gets the resolving parent.abstract intgetStartOffset()Gets the starting offset in the model for the element.booleanisDefined(Object attrName)Checks whether a given attribute is defined.booleanisEqual(AttributeSet attr)Checks whether two attribute sets are equal.abstract booleanisLeaf()Checks whether the element is a leaf.voidremoveAttribute(Object name)Removes an attribute from the set.voidremoveAttributes(Enumeration<?> names)Removes a set of attributes for the element.voidremoveAttributes(AttributeSet attrs)Removes a set of attributes for the element.voidsetResolveParent(AttributeSet parent)Sets the resolving parent.
-
-
-
Constructor Detail
-
AbstractElement
public AbstractElement(Element parent, AttributeSet a)
Creates a new AbstractElement.- Parameters:
parent- the parent elementa- the attributes for the element- Since:
- 1.4
-
-
Method Detail
-
dump
public void dump(PrintStream psOut, int indentAmount)
Dumps a debugging representation of the element hierarchy.- Parameters:
psOut- the output streamindentAmount- the indentation level >= 0
-
getAttributeCount
public int getAttributeCount()
Gets the number of attributes that are defined.- Specified by:
getAttributeCountin interfaceAttributeSet- Returns:
- the number of attributes >= 0
- See Also:
AttributeSet.getAttributeCount()
-
isDefined
public boolean isDefined(Object attrName)
Checks whether a given attribute is defined.- Specified by:
isDefinedin interfaceAttributeSet- Parameters:
attrName- the non-null attribute name- Returns:
- true if the attribute is defined
- See Also:
AttributeSet.isDefined(java.lang.Object)
-
isEqual
public boolean isEqual(AttributeSet attr)
Checks whether two attribute sets are equal.- Specified by:
isEqualin interfaceAttributeSet- Parameters:
attr- the attribute set to check against- Returns:
- true if the same
- See Also:
AttributeSet.isEqual(javax.swing.text.AttributeSet)
-
copyAttributes
public AttributeSet copyAttributes()
Copies a set of attributes.- Specified by:
copyAttributesin interfaceAttributeSet- Returns:
- the copy
- See Also:
AttributeSet.copyAttributes()
-
getAttribute
public Object getAttribute(Object attrName)
Gets the value of an attribute.- Specified by:
getAttributein interfaceAttributeSet- Parameters:
attrName- the non-null attribute name- Returns:
- the attribute value
- See Also:
AttributeSet.getAttribute(java.lang.Object)
-
getAttributeNames
public Enumeration<?> getAttributeNames()
Gets the names of all attributes.- Specified by:
getAttributeNamesin interfaceAttributeSet- Returns:
- the attribute names as an enumeration
- See Also:
AttributeSet.getAttributeNames()
-
containsAttribute
public boolean containsAttribute(Object name, Object value)
Checks whether a given attribute name/value is defined.- Specified by:
containsAttributein interfaceAttributeSet- Parameters:
name- the non-null attribute namevalue- the attribute value- Returns:
- true if the name/value is defined
- See Also:
AttributeSet.containsAttribute(java.lang.Object, java.lang.Object)
-
containsAttributes
public boolean containsAttributes(AttributeSet attrs)
Checks whether the element contains all the attributes.- Specified by:
containsAttributesin interfaceAttributeSet- Parameters:
attrs- the attributes to check- Returns:
- true if the element contains all the attributes
- See Also:
AttributeSet.containsAttributes(javax.swing.text.AttributeSet)
-
getResolveParent
public AttributeSet getResolveParent()
Gets the resolving parent. If not overridden, the resolving parent defaults to the parent element.- Specified by:
getResolveParentin interfaceAttributeSet- Returns:
- the attributes from the parent,
nullif none - See Also:
AttributeSet.getResolveParent()
-
addAttribute
public void addAttribute(Object name, Object value)
Adds an attribute to the element.- Specified by:
addAttributein interfaceMutableAttributeSet- Parameters:
name- the non-null attribute namevalue- the attribute value- See Also:
MutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)
-
addAttributes
public void addAttributes(AttributeSet attr)
Adds a set of attributes to the element.- Specified by:
addAttributesin interfaceMutableAttributeSet- Parameters:
attr- the attributes to add- See Also:
MutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)
-
removeAttribute
public void removeAttribute(Object name)
Removes an attribute from the set.- Specified by:
removeAttributein interfaceMutableAttributeSet- Parameters:
name- the non-null attribute name- See Also:
MutableAttributeSet.removeAttribute(java.lang.Object)
-
removeAttributes
public void removeAttributes(Enumeration<?> names)
Removes a set of attributes for the element.- Specified by:
removeAttributesin interfaceMutableAttributeSet- Parameters:
names- the attribute names- See Also:
MutableAttributeSet.removeAttributes(java.util.Enumeration<?>)
-
removeAttributes
public void removeAttributes(AttributeSet attrs)
Removes a set of attributes for the element.- Specified by:
removeAttributesin interfaceMutableAttributeSet- Parameters:
attrs- the attributes- See Also:
MutableAttributeSet.removeAttributes(java.util.Enumeration<?>)
-
setResolveParent
public void setResolveParent(AttributeSet parent)
Sets the resolving parent.- Specified by:
setResolveParentin interfaceMutableAttributeSet- Parameters:
parent- the parent, null if none- See Also:
MutableAttributeSet.setResolveParent(javax.swing.text.AttributeSet)
-
getDocument
public Document getDocument()
Retrieves the underlying model.- Specified by:
getDocumentin interfaceElement- Returns:
- the model
-
getParentElement
public Element getParentElement()
Gets the parent of the element.- Specified by:
getParentElementin interfaceElement- Returns:
- the parent
-
getAttributes
public AttributeSet getAttributes()
Gets the attributes for the element.- Specified by:
getAttributesin interfaceElement- Returns:
- the attribute set
-
getName
public String getName()
Gets the name of the element.
-
getStartOffset
public abstract int getStartOffset()
Gets the starting offset in the model for the element.- Specified by:
getStartOffsetin interfaceElement- Returns:
- the offset >= 0
- See Also:
Document,AbstractDocument
-
getEndOffset
public abstract int getEndOffset()
Gets the ending offset in the model for the element.- Specified by:
getEndOffsetin interfaceElement- Returns:
- the offset >= 0
- See Also:
Document,AbstractDocument
-
getElement
public abstract Element getElement(int index)
Gets a child element.- Specified by:
getElementin interfaceElement- Parameters:
index- the child index, >= 0 && < getElementCount()- Returns:
- the child element
-
getElementCount
public abstract int getElementCount()
Gets the number of children for the element.- Specified by:
getElementCountin interfaceElement- Returns:
- the number of children >= 0
-
getElementIndex
public abstract int getElementIndex(int offset)
Gets the child element index closest to the given model offset.- Specified by:
getElementIndexin interfaceElement- Parameters:
offset- the offset >= 0- Returns:
- the element index >= 0
-
isLeaf
public abstract boolean isLeaf()
Checks whether the element is a leaf.
-
getChildAt
public TreeNode getChildAt(int childIndex)
Returns the childTreeNodeat indexchildIndex.- Specified by:
getChildAtin interfaceTreeNode- Parameters:
childIndex- index of child- Returns:
- the child node at given index
-
getChildCount
public int getChildCount()
Returns the number of childrenTreeNode's receiver contains.- Specified by:
getChildCountin interfaceTreeNode- Returns:
- the number of children
TreeNodews's receiver contains
-
getParent
public TreeNode getParent()
Returns the parentTreeNodeof the receiver.
-
getIndex
public int getIndex(TreeNode node)
Returns the index ofnodein the receivers children. If the receiver does not containnode, -1 will be returned.
-
getAllowsChildren
public abstract boolean getAllowsChildren()
Returns true if the receiver allows children.- Specified by:
getAllowsChildrenin interfaceTreeNode- Returns:
- true if the receiver allows children, otherwise false
-
children
public abstract Enumeration<TreeNode> children()
Returns the children of the receiver as anEnumeration.
-
-