java.lang.Object | |
↳ | javax.swing.text.StyleContext |
![]() |
A pool of styles and their associated resources. This class determines the lifetime of a group of resources by being a container that holds caches for various resources such as font and color that get reused by the various style definitions. This can be shared by multiple documents if desired to maximize the sharing of related resources.
This class also provides efficient support for small sets of attributes and compresses them by sharing across uses and taking advantage of their immutable nature. Since many styles are replicated, the potential for sharing is significant, and copies can be extremely cheap. Larger sets reduce the possibility of sharing, and therefore revert automatically to a less space-efficient implementation.
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 JavaBeansTM
has been added to the java.beans
package.
Please see XMLEncoder
.
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
StyleContext.NamedStyle | A collection of attributes, typically used to represent character and paragraph styles. | ||||||||||
StyleContext.SmallAttributeSet | This class holds a small number of attributes in an array. |
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
String | DEFAULT_STYLE | The name given to the default logical style attached to paragraphs. |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Creates a new StyleContext object.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Adds an attribute to the given set, and returns
the new representative set.
| |||||||||||
Adds a set of attributes to the element.
| |||||||||||
Adds a listener to track when styles are added
or removed.
| |||||||||||
Adds a new style into the style hierarchy.
| |||||||||||
Takes a set of attributes and turn it into a background color
specification.
| |||||||||||
Returns an array of all the
ChangeListener s added
to this StyleContext with addChangeListener(). | |||||||||||
Returns default AttributeContext shared by all documents that
don't bother to define/supply their own context.
| |||||||||||
Fetches an empty AttributeSet.
| |||||||||||
Gets a new font.
| |||||||||||
Gets the font from an attribute set.
| |||||||||||
Returns font metrics for a font.
| |||||||||||
Takes a set of attributes and turn it into a foreground color
specification.
| |||||||||||
Returns the object previously registered with
registerStaticAttributeKey . | |||||||||||
Returns the String that
key will be registered with | |||||||||||
Fetches a named style previously added to the document
| |||||||||||
Fetches the names of the styles defined.
| |||||||||||
Reads a set of attributes from the given object input
stream that have been previously written out with
writeAttributeSet . | |||||||||||
Context-specific handling of reading in attributes
| |||||||||||
Returns a set no longer needed by the MutableAttributeSet implmentation.
| |||||||||||
Registers an object as a static object that is being
used as a key in attribute sets.
| |||||||||||
Removes an attribute from the set.
| |||||||||||
Removes a set of attributes for the element.
| |||||||||||
Removes a set of attributes for the element.
| |||||||||||
Removes a listener that was tracking styles being
added or removed.
| |||||||||||
Removes a named style previously added to the document.
| |||||||||||
Converts a StyleContext to a String.
| |||||||||||
Writes a set of attributes to the given object stream
for the purpose of serialization.
| |||||||||||
Context-specific handling of writing out attributes
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Create a large set of attributes that should trade off
space for time.
| |||||||||||
Create a compact set of attributes that might be shared.
| |||||||||||
Returns the maximum number of key/value pairs to try and
compress into unique/immutable sets.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() | |||||||||||
![]() |
The name given to the default logical style attached to paragraphs.
Creates a new StyleContext object.
Adds an attribute to the given set, and returns the new representative set.
This method is thread safe, although most Swing methods are not. Please see How to Use Threads for more information.
old | the old attribute set |
---|---|
name | the non-null attribute name |
value | the attribute value |
Adds a set of attributes to the element.
This method is thread safe, although most Swing methods are not. Please see How to Use Threads for more information.
old | the old attribute set |
---|---|
attr | the attributes to add |
Adds a listener to track when styles are added or removed.
l | the change listener |
---|
Adds a new style into the style hierarchy. Style attributes resolve from bottom up so an attribute specified in a child will override an attribute specified in the parent.
nm | the name of the style (must be unique within the collection of named styles in the document). The name may be null if the style is unnamed, but the caller is responsible for managing the reference returned as an unnamed style can't be fetched by name. An unnamed style may be useful for things like character attribute overrides such as found in a style run. |
---|---|
parent | the parent style. This may be null if unspecified attributes need not be resolved in some other style. |
Takes a set of attributes and turn it into a background color specification. This might be used to specify things like brighter, more hue, etc. By default it simply returns the value specified by the StyleConstants.Background attribute.
attr | the set of attributes |
---|
Returns an array of all the ChangeListener
s added
to this StyleContext with addChangeListener().
ChangeListener
s added or an empty
array if no listeners have been addedReturns default AttributeContext shared by all documents that don't bother to define/supply their own context.
Gets a new font. This returns a Font from a cache if a cached font exists. If not, a Font is added to the cache. This is basically a low-level cache for 1.1 font features.
family | the font family (such as "Monospaced") |
---|---|
style | the style of the font (such as Font.PLAIN) |
size | the point size >= 1 |
Gets the font from an attribute set. This is implemented to try and fetch a cached font for the given AttributeSet, and if that fails the font features are resolved and the font is fetched from the low-level font cache.
attr | the attribute set |
---|
Returns font metrics for a font.
f | the font |
---|
Takes a set of attributes and turn it into a foreground color specification. This might be used to specify things like brighter, more hue, etc. By default it simply returns the value specified by the StyleConstants.Foreground attribute.
attr | the set of attributes |
---|
Returns the object previously registered with
registerStaticAttributeKey
.
Returns the String that key
will be registered with
Fetches a named style previously added to the document
nm | the name of the style |
---|
Fetches the names of the styles defined.
Reads a set of attributes from the given object input
stream that have been previously written out with
writeAttributeSet
. This will try to restore
keys that were static objects to the static objects in
the current virtual machine considering only those keys
that have been registered with the
registerStaticAttributeKey
method.
The attributes retrieved from the stream will be placed
into the given mutable set.
in | the object stream to read the attribute data from. |
---|---|
a | the attribute set to place the attribute definitions in. |
ClassNotFoundException | passed upward if encountered when reading the object stream. |
---|---|
IOException | passed upward if encountered when reading the object stream. |
Context-specific handling of reading in attributes
Returns a set no longer needed by the MutableAttributeSet implmentation. This is useful for operation under 1.1 where there are no weak references. This would typically be called by the finalize method of the MutableAttributeSet implementation.
This method is thread safe, although most Swing methods are not. Please see How to Use Threads for more information.
a | the set to reclaim |
---|
Registers an object as a static object that is being used as a key in attribute sets. This allows the key to be treated specially for serialization.
For operation under a 1.1 virtual machine, this
uses the value returned by toString
concatenated to the classname. The value returned
by toString should not have the class reference
in it (ie it should be reimplemented from the
definition in Object) in order to be the same when
recomputed later.
key | the non-null object key |
---|
Removes an attribute from the set.
This method is thread safe, although most Swing methods are not. Please see How to Use Threads for more information.
old | the old set of attributes |
---|---|
name | the non-null attribute name |
Removes a set of attributes for the element.
This method is thread safe, although most Swing methods are not. Please see How to Use Threads for more information.
old | the old attribute set |
---|---|
names | the attribute names |
Removes a set of attributes for the element.
This method is thread safe, although most Swing methods are not. Please see How to Use Threads for more information.
old | the old attribute set |
---|---|
attrs | the attributes |
Removes a listener that was tracking styles being added or removed.
l | the change listener |
---|
Removes a named style previously added to the document.
nm | the name of the style to remove |
---|
Writes a set of attributes to the given object stream
for the purpose of serialization. This will take
special care to deal with static attribute keys that
have been registered wit the
registerStaticAttributeKey
method.
Any attribute key not regsitered as a static key
will be serialized directly. All values are expected
to be serializable.
out | the output stream |
---|---|
a | the attribute set |
IOException | on any I/O error |
---|
Context-specific handling of writing out attributes
IOException |
---|
Create a large set of attributes that should trade off space for time. This set will not be shared. This is a hook for subclasses that want to alter the behavior of the larger attribute storage format (which is SimpleAttributeSet by default). This can be reimplemented to return a MutableAttributeSet that provides some sort of attribute conversion.
a | The set of attributes to be represented in the the larger form. |
---|
Create a compact set of attributes that might be shared. This is a hook for subclasses that want to alter the behavior of SmallAttributeSet. This can be reimplemented to return an AttributeSet that provides some sort of attribute conversion.
a | The set of attributes to be represented in the the compact form. |
---|
Returns the maximum number of key/value pairs to try and compress into unique/immutable sets. Any sets above this limit will use hashtables and be a MutableAttributeSet.