javax.swing.text

Class StyleContext

Implemented Interfaces:
AbstractDocument.AttributeContext, Serializable
Known Direct 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(String family, int style, int size)
Font
getFont(AttributeSet attr)
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.
static void
readAttributeSet(ObjectInputStream in, MutableAttributeSet a)
Reads a set of attributes from the given object input stream.
void
readAttributes(ObjectInputStream in, MutableAttributeSet a)
Handles reading in the attributes.
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, Enumeration names)
Removes all attributes specified by names from old and returns the resulting AttributeSet.
AttributeSet
removeAttributes(AttributeSet old, AttributeSet attributes)
Removes all attributes in attributes from old and returns the resulting AttributeSet.
void
removeChangeListener(ChangeListener listener)
void
removeStyle(String name)
String
toString()
Returns a string representation of this StyleContext.
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).
void
writeAttributes(ObjectOutputStream out, AttributeSet a)
Handles writing of the given attributes.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

DEFAULT_STYLE

public static final String DEFAULT_STYLE
The name of the default style.
Field Value:
"default"

Constructor Details

StyleContext

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

Method Details

addAttribute

public 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.
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)
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

addChangeListener

public void addChangeListener(ChangeListener listener)

addStyle

public Style addStyle(String name,
                      Style parent)

createLargeAttributeSet

protected MutableAttributeSet createLargeAttributeSet(AttributeSet a)

createSmallAttributeSet

protected StyleContext.SmallAttributeSet createSmallAttributeSet(AttributeSet a)

getBackground

public Color getBackground(AttributeSet a)

getChangeListeners

public ChangeListener[] getChangeListeners()

getCompressionThreshold

protected int getCompressionThreshold()

getDefaultStyleContext

public static StyleContext getDefaultStyleContext()

getEmptySet

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

getFont

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

getFont

public Font getFont(AttributeSet attr)

getFontMetrics

public FontMetrics getFontMetrics(Font f)

getForeground

public Color getForeground(AttributeSet a)

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.

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.

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

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

reclaim

public void reclaim(AttributeSet attributes)
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

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

removeAttribute

public AttributeSet removeAttribute(AttributeSet old,
                                    Object name)
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,
                                     Enumeration names)
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

removeAttributes

public AttributeSet removeAttributes(AttributeSet old,
                                     AttributeSet attributes)
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

removeChangeListener

public void removeChangeListener(ChangeListener listener)

removeStyle

public void removeStyle(String name)

toString

public String toString()
Returns a string representation of this StyleContext.
Overrides:
toString in interface Object
Returns:
a string representation of this StyleContext

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

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

StyleContext.java -- Copyright (C) 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.