Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

Copyright © 2006 Sun Microsystems, Inc. All rights reserved.

JSR-209 (Final Approval Ballot)

javax.swing.text
Interface AttributeSet

All Known Subinterfaces:
MutableAttributeSet, Style
All Known Implementing Classes:
AbstractDocument.AbstractElement

public interface AttributeSet

A collection of unique attributes. This is a read-only, immutable interface. An attribute is basically a key and a value assigned to the key. The collection may represent something like a style run, a logical style, etc. These are generally used to describe features that will contribute to some graphical representation such as a font. The set of possible keys is unbounded and can be anything. Typically View implementations will respond to attribute definitions and render something to represent the attributes.

Attributes can potentially resolve in a hierarchy. If a key doesn't resolve locally, and a resolving parent exists, the key will be resolved through the parent.

See Also:
MutableAttributeSet

Nested Class Summary
static interface AttributeSet.CharacterAttribute
          This interface is the type signature that is expected to be present on any attribute key that contributes to character level presentation.
static interface AttributeSet.ColorAttribute
          This interface is the type signature that is expected to be present on any attribute key that contributes to presentation of color.
static interface AttributeSet.FontAttribute
          This interface is the type signature that is expected to be present on any attribute key that contributes to the determination of what font to use to render some text.
static interface AttributeSet.ParagraphAttribute
          This interface is the type signature that is expected to be present on any attribute key that contributes to the paragraph level presentation.
 
Field Summary
static java.lang.Object NameAttribute
          Attribute name used to name the collection of attributes.
static java.lang.Object ResolveAttribute
          Attribute name used to identify the resolving parent set of attributes, if one is defined.
 
Method Summary
 boolean containsAttribute(java.lang.Object name, java.lang.Object value)
          Returns true if this set contains this attribute with an equal value.
 boolean containsAttributes(AttributeSet attributes)
          Returns true if this set contains all the attributes with equal values.
 AttributeSet copyAttributes()
          Returns an attribute set that is guaranteed not to change over time.
 java.lang.Object getAttribute(java.lang.Object key)
          Fetches the value of the given attribute.
 int getAttributeCount()
          Returns the number of attributes contained in this set.
 java.util.Enumeration getAttributeNames()
          Returns an enumeration over the names of the attributes in the set.
 AttributeSet getResolveParent()
          Gets the resolving parent.
 boolean isDefined(java.lang.Object attrName)
          Checks whether the named attribute has a value specified in the set without resolving through another attribute set.
 boolean isEqual(AttributeSet attr)
          Determines if the two attribute sets are equivalent.
 

Field Detail

NameAttribute

public static final java.lang.Object NameAttribute
Attribute name used to name the collection of attributes.


ResolveAttribute

public static final java.lang.Object ResolveAttribute
Attribute name used to identify the resolving parent set of attributes, if one is defined.

Method Detail

getAttributeCount

public int getAttributeCount()
Returns the number of attributes contained in this set.

Returns:
the number of attributes >= 0

isDefined

public boolean isDefined(java.lang.Object attrName)
Checks whether the named attribute has a value specified in the set without resolving through another attribute set.

Parameters:
attrName - the attribute name
Returns:
true if the attribute has a value specified

isEqual

public boolean isEqual(AttributeSet attr)
Determines if the two attribute sets are equivalent.

Parameters:
attr - an attribute set
Returns:
true if the sets are equivalent

copyAttributes

public AttributeSet copyAttributes()
Returns an attribute set that is guaranteed not to change over time.

Returns:
a copy of the attribute set

getAttribute

public java.lang.Object getAttribute(java.lang.Object key)
Fetches the value of the given attribute. If the value is not found locally, the search is continued upward through the resolving parent (if one exists) until the value is either found or there are no more parents. If the value is not found, null is returned.

Parameters:
key - the non-null key of the attribute binding
Returns:
the value

getAttributeNames

public java.util.Enumeration getAttributeNames()
Returns an enumeration over the names of the attributes in the set. The values of the Enumeration may be anything and are not constrained to a particular Object type. The set does not include the resolving parent, if one is defined.

Returns:
the names

containsAttribute

public boolean containsAttribute(java.lang.Object name,
                                 java.lang.Object value)
Returns true if this set contains this attribute with an equal value.

Parameters:
name - the non-null attribute name
value - the value
Returns:
true if the set contains the attribute with an equal value

containsAttributes

public boolean containsAttributes(AttributeSet attributes)
Returns true if this set contains all the attributes with equal values.

Parameters:
attributes - the set of attributes to check against
Returns:
true if this set contains all the attributes with equal values

getResolveParent

public AttributeSet getResolveParent()
Gets the resolving parent.

Returns:
the parent

JSR-209 (Final Approval Ballot)

Copyright © 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

For more information, please consult the JSR 209 specification.