javax.swing.text
Class StyleContext

java.lang.Object
  extended by javax.swing.text.StyleContext
All Implemented Interfaces:
Serializable, AbstractDocument.AttributeContext
Direct Known Subclasses:
StyleSheet

public class StyleContext
extends Object
implements Serializable, AbstractDocument.AttributeContext

See Also:
Serialized Form

Nested Class Summary
 class StyleContext.NamedStyle
           
 class StyleContext.SmallAttributeSet
           
 
Field Summary
static String DEFAULT_STYLE
          The name of the default style.
 
Constructor Summary
StyleContext()
          Creates a new instance of the style context.
 
Method Summary
 AttributeSet addAttribute(AttributeSet old, Object name, Object value)
          Returns an AttributeSet that contains the attributes of old plus the new attribute specified by name and value.
 AttributeSet addAttributes(AttributeSet old, AttributeSet attributes)
          Returns an AttributeSet that contains the attributes of old plus the new attributes in attributes.
 void addChangeListener(ChangeListener listener)
           
 Style addStyle(String name, Style parent)
           
protected  MutableAttributeSet createLargeAttributeSet(AttributeSet a)
           
protected  StyleContext.SmallAttributeSet createSmallAttributeSet(AttributeSet a)
           
 Color getBackground(AttributeSet a)
           
 ChangeListener[] getChangeListeners()
           
protected  int getCompressionThreshold()
           
static StyleContext getDefaultStyleContext()
           
 AttributeSet getEmptySet()
          Returns an empty AttributeSet.
 Font getFont(AttributeSet attr)
           
 Font getFont(String family, int style, int size)
           
 FontMetrics getFontMetrics(Font f)
           
 Color getForeground(AttributeSet a)
           
static Object getStaticAttribute(Object key)
          Gets the object previously registered with registerStaticAttributeKey.
static Object getStaticAttributeKey(Object key)
          Returns the String that key will be registered with registerStaticAttributeKey.
 Style getStyle(String name)
          Get the style from the style table.
 Enumeration<?> getStyleNames()
          Get the names of the style.
 void readAttributes(ObjectInputStream in, MutableAttributeSet a)
          Handles reading in the attributes.
static void readAttributeSet(ObjectInputStream in, MutableAttributeSet a)
          Reads a set of attributes from the given object input stream.
 void reclaim(AttributeSet attributes)
          Called to indicate that the attributes in attributes are no longer used.
static void registerStaticAttributeKey(Object key)
          Registers an attribute key as a well-known keys.
 AttributeSet removeAttribute(AttributeSet old, Object name)
          Returns a AttributeSet that has the attribute with the specified name removed from old.
 AttributeSet removeAttributes(AttributeSet old, AttributeSet attributes)
          Removes all attributes in attributes from old and returns the resulting AttributeSet.
 AttributeSet removeAttributes(AttributeSet old, Enumeration<?> names)
          Removes all attributes specified by names from old and returns the resulting AttributeSet.
 void removeChangeListener(ChangeListener listener)
           
 void removeStyle(String name)
           
 String toString()
          Returns a string representation of this StyleContext.
 void writeAttributes(ObjectOutputStream out, AttributeSet a)
          Handles writing of the given attributes.
static void writeAttributeSet(ObjectOutputStream out, AttributeSet a)
          Serialize an attribute set in a way that is compatible with it being read in again by readAttributeSet(ObjectInputStream, MutableAttributeSet).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT_STYLE

public static final String DEFAULT_STYLE
The name of the default style.

See Also:
Constant Field Values
Constructor Detail

StyleContext

public StyleContext()
Creates a new instance of the style context. Add the default style to the style table.

Method Detail

createSmallAttributeSet

protected StyleContext.SmallAttributeSet createSmallAttributeSet(AttributeSet a)

createLargeAttributeSet

protected MutableAttributeSet createLargeAttributeSet(AttributeSet a)

addChangeListener

public void addChangeListener(ChangeListener listener)

removeChangeListener

public void removeChangeListener(ChangeListener listener)

getChangeListeners

public ChangeListener[] getChangeListeners()

addStyle

public Style addStyle(String name,
                      Style parent)

removeStyle

public void removeStyle(String name)

getStyle

public Style getStyle(String name)
Get the style from the style table. If the passed name matches DEFAULT_STYLE, returns the default style. Otherwise returns the previously defined style of null if the style with the given name is not defined.

Parameters:
name - the name of the style.
Returns:
the style with the given name or null if no such defined.

getStyleNames

public Enumeration<?> getStyleNames()
Get the names of the style. The returned enumeration always contains at least one member, the default style.


getFont

public Font getFont(AttributeSet attr)

getFont

public Font getFont(String family,
                    int style,
                    int size)

getFontMetrics

public FontMetrics getFontMetrics(Font f)

getForeground

public Color getForeground(AttributeSet a)

getBackground

public Color getBackground(AttributeSet a)

getCompressionThreshold

protected int getCompressionThreshold()

getDefaultStyleContext

public static StyleContext getDefaultStyleContext()

addAttribute

public AttributeSet addAttribute(AttributeSet old,
                                 Object name,
                                 Object value)
Description copied from interface: AbstractDocument.AttributeContext
Returns an AttributeSet that contains the attributes of old plus the new attribute specified by name and value.

Specified by:
addAttribute in interface AbstractDocument.AttributeContext
Parameters:
old - the attribute set to be merged with the new attribute
name - the name of the attribute to be added
value - the value of the attribute to be added
Returns:
the old attributes plus the new attribute

addAttributes

public AttributeSet addAttributes(AttributeSet old,
                                  AttributeSet attributes)
Description copied from interface: AbstractDocument.AttributeContext
Returns an AttributeSet that contains the attributes of old plus the new attributes in attributes.

Specified by:
addAttributes in interface AbstractDocument.AttributeContext
Parameters:
old - the set of attributes where to add the new attributes
attributes - the attributes to be added
Returns:
an AttributeSet that contains the attributes of old plus the new attributes in attributes

getEmptySet

public AttributeSet getEmptySet()
Description copied from interface: AbstractDocument.AttributeContext
Returns an empty AttributeSet.

Specified by:
getEmptySet in interface AbstractDocument.AttributeContext
Returns:
an empty AttributeSet

reclaim

public void reclaim(AttributeSet attributes)
Description copied from interface: AbstractDocument.AttributeContext
Called to indicate that the attributes in attributes are no longer used.

Specified by:
reclaim in interface AbstractDocument.AttributeContext
Parameters:
attributes - the attributes are no longer used

removeAttribute

public AttributeSet removeAttribute(AttributeSet old,
                                    Object name)
Description copied from interface: AbstractDocument.AttributeContext
Returns a AttributeSet that has the attribute with the specified name removed from old.

Specified by:
removeAttribute in interface AbstractDocument.AttributeContext
Parameters:
old - the attribute set from which an attribute is removed
name - the name of the attribute to be removed
Returns:
the attributes of old minus the attribute specified by name

removeAttributes

public AttributeSet removeAttributes(AttributeSet old,
                                     AttributeSet attributes)
Description copied from interface: AbstractDocument.AttributeContext
Removes all attributes in attributes from old and returns the resulting AttributeSet.

Specified by:
removeAttributes in interface AbstractDocument.AttributeContext
Parameters:
old - the set of attributes from which to remove attributes
attributes - the attributes to be removed from old
Returns:
the attributes of old minus the attributes in attributes

removeAttributes

public AttributeSet removeAttributes(AttributeSet old,
                                     Enumeration<?> names)
Description copied from interface: AbstractDocument.AttributeContext
Removes all attributes specified by names from old and returns the resulting AttributeSet.

Specified by:
removeAttributes in interface AbstractDocument.AttributeContext
Parameters:
old - the set of attributes from which to remove attributes
names - the names of the attributes to be removed from old
Returns:
the attributes of old minus the attributes in attributes

getStaticAttribute

public static Object getStaticAttribute(Object key)
Gets the object previously registered with registerStaticAttributeKey.

Parameters:
key - - the key that was registered.
Returns:
the object previously registered with registerStaticAttributeKey.

getStaticAttributeKey

public static Object getStaticAttributeKey(Object key)
Returns the String that key will be registered with registerStaticAttributeKey.

Parameters:
key - - the key that will be registered.
Returns:
the string the key will be registered with.

readAttributeSet

public static void readAttributeSet(ObjectInputStream in,
                                    MutableAttributeSet a)
                             throws ClassNotFoundException,
                                    IOException
Reads a set of attributes from the given object input stream. This will attempt to restore keys that were static objects by considering only the keys that have were registered with registerStaticAttributeKey. The attributes retrieved will be placed into the given set.

Parameters:
in - - the stream to read from
a - - the set of attributes
Throws:
ClassNotFoundException - - may be encountered when reading from stream
IOException - - any I/O error

writeAttributeSet

public static void writeAttributeSet(ObjectOutputStream out,
                                     AttributeSet a)
                              throws IOException
Serialize an attribute set in a way that is compatible with it being read in again by readAttributeSet(ObjectInputStream, MutableAttributeSet). In particular registered static keys are transformed properly.

Parameters:
out - - stream to write to
a - - the attribute set
Throws:
IOException - - any I/O error

readAttributes

public void readAttributes(ObjectInputStream in,
                           MutableAttributeSet a)
                    throws ClassNotFoundException,
                           IOException
Handles reading in the attributes.

Parameters:
in - - the stream to read from
a - - the set of attributes
Throws:
ClassNotFoundException - - may be encountered when reading from stream
IOException - - any I/O error
See Also:
readAttributeSet(ObjectInputStream, MutableAttributeSet)

writeAttributes

public void writeAttributes(ObjectOutputStream out,
                            AttributeSet a)
                     throws IOException
Handles writing of the given attributes.

Parameters:
out - - stream to write to
a - - the attribute set
Throws:
IOException - - any I/O error
See Also:
writeAttributeSet(ObjectOutputStream, AttributeSet)

registerStaticAttributeKey

public static void registerStaticAttributeKey(Object key)
Registers an attribute key as a well-known keys. When an attribute with such a key is written to a stream, a special syntax is used so that it can be recognized when it is read back in. All attribute keys defined in StyleContext are registered as static keys. If you define additional attribute keys that you want to exist as nonreplicated objects, then you should register them using this method.

Parameters:
key - the key to register as static attribute key

toString

public String toString()
Returns a string representation of this StyleContext.

Overrides:
toString in class Object
Returns:
a string representation of this StyleContext
See Also:
Object.getClass(), Object.hashCode(), Class.getName(), Integer.toHexString(int)