package

javax.swing.text

Provides classes and interfaces that deal with editable and noneditable text components. Examples of text components are text fields and text areas, of which password fields and document editors are special instantiations. Features that are supported by this package include selection/highlighting, editing, style, and key mapping.

Note: Most of the Swing API is not thread safe. For details, see Threads and Swing, a section in The Java Tutorial.

Related Documentation

For overviews, tutorials, examples, guides, and tool documentation, please see:

Interfaces

AbstractDocument.AttributeContext An interface that can be used to allow MutableAttributeSet implementations to use pluggable attribute compression techniques. 
AbstractDocument.Content Interface to describe a sequence of character content that can be edited. 
AttributeSet A collection of unique attributes. 
AttributeSet.CharacterAttribute This interface is the type signature that is expected to be present on any attribute key that contributes to character level presentation. 
AttributeSet.ColorAttribute This interface is the type signature that is expected to be present on any attribute key that contributes to presentation of color. 
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. 
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. 
Caret A place within a document view that represents where things can be inserted into the document model. 
Document

The Document is a container for text that serves as the model for swing text components. 

Element Interface to describe a structural piece of a document. 
Highlighter An interface for an object that allows one to mark up the background with colored areas. 
Highlighter.Highlight  
Highlighter.HighlightPainter Highlight renderer. 
Keymap A collection of bindings of KeyStrokes to actions. 
MutableAttributeSet A generic interface for a mutable collection of unique attributes. 
Position Represents a location within a document. 
Style A collection of attributes to associate with an element in a document. 
StyledDocument Interface for a generic styled document. 
TabableView Interface for Views that have size dependent upon tabs. 
TabExpander Simple interface to allow for different types of implementations of tab expansion. 
ViewFactory A factory to create a view of some portion of document subject. 

Classes

AbstractDocument An implementation of the document interface to serve as a basis for implementing various kinds of documents. 
AbstractDocument.AbstractElement Implements the abstract part of an element. 
AbstractDocument.BranchElement Implements a composite element that contains other elements. 
AbstractDocument.DefaultDocumentEvent Stores document changes as the document is being modified. 
AbstractDocument.ElementEdit An implementation of ElementChange that can be added to the document event. 
AbstractDocument.LeafElement Implements an element that directly represents content of some kind. 
AbstractWriter AbstractWriter is an abstract class that actually does the work of writing out the element tree including the attributes. 
AsyncBoxView A box that does layout asynchronously. 
AsyncBoxView.ChildLocator A class to manage the effective position of the child views in a localized area while changes are being made around the localized area. 
AsyncBoxView.ChildState A record representing the layout state of a child view. 
BoxView A view that arranges its children into a box shape by tiling its children along an axis. 
ComponentView Component decorator that implements the view interface. 
CompositeView CompositeView is an abstract View implementation which manages one or more child views. 
DateFormatter DateFormatter is an InternationalFormatter that does its formatting by way of an instance of java.text.DateFormat
DefaultCaret A default implementation of Caret. 
DefaultEditorKit This is the set of things needed by a text component to be a reasonably functioning editor for some type of text document. 
DefaultEditorKit.BeepAction Creates a beep. 
DefaultEditorKit.CopyAction Copies the selected region and place its contents into the system clipboard. 
DefaultEditorKit.CutAction Cuts the selected region and place its contents into the system clipboard. 
DefaultEditorKit.DefaultKeyTypedAction The action that is executed by default if a key typed event is received and there is no keymap entry. 
DefaultEditorKit.InsertBreakAction Places a line/paragraph break into the document. 
DefaultEditorKit.InsertContentAction Places content into the associated document. 
DefaultEditorKit.InsertTabAction Places a tab character into the document. 
DefaultEditorKit.PasteAction Pastes the contents of the system clipboard into the selected region, or before the caret if nothing is selected. 
DefaultFormatter DefaultFormatter formats aribtrary objects. 
DefaultFormatterFactory An implementation of JFormattedTextField.AbstractFormatterFactory
DefaultHighlighter Implements the Highlighter interfaces. 
DefaultHighlighter.DefaultHighlightPainter Simple highlight painter that fills a highlighted area with a solid color. 
DefaultStyledDocument A document that can be marked up with character and paragraph styles in a manner similar to the Rich Text Format. 
DefaultStyledDocument.AttributeUndoableEdit An UndoableEdit used to remember AttributeSet changes to an Element. 
DefaultStyledDocument.ElementBuffer Class to manage changes to the element hierarchy. 
DefaultStyledDocument.ElementSpec Specification for building elements. 
DefaultStyledDocument.SectionElement Default root element for a document... 
DefaultTextUI This class is deprecated. No replacement. 
DocumentFilter DocumentFilter, as the name implies, is a filter for the Document mutation methods. 
DocumentFilter.FilterBypass Used as a way to circumvent calling back into the Document to change it. 
EditorKit Establishes the set of things needed by a text component to be a reasonably functioning editor for some type of text content. 
ElementIterator

ElementIterator, as the name suggests, iteratates over the Element tree. 

FieldView Extends the multi-line plain text view to be suitable for a single-line editor view. 
FlowView A View that tries to flow it's children into some partially constrained space. 
FlowView.FlowStrategy Strategy for maintaining the physical form of the flow. 
GapContent An implementation of the AbstractDocument.Content interface implemented using a gapped buffer similar to that used by emacs. 
GlyphView A GlyphView is a styled chunk of text that represents a view mapped over an element in the text model. 
GlyphView.GlyphPainter A class to perform rendering of the glyphs. 
IconView Icon decorator that implements the view interface. 
InternationalFormatter InternationalFormatter extends DefaultFormatter, using an instance of java.text.Format to handle the conversion to a String, and the conversion from a String. 
JTextComponent JTextComponent is the base class for swing text components. 
JTextComponent.AccessibleJTextComponent This class implements accessibility support for the JTextComponent class. 
JTextComponent.DropLocation Represents a drop location for JTextComponents. 
JTextComponent.KeyBinding Binding record for creating key bindings. 
LabelView A LabelView is a styled chunk of text that represents a view mapped over an element in the text model. 
LayeredHighlighter  
LayeredHighlighter.LayerPainter Layered highlight renderer. 
LayoutQueue A queue of text layout tasks. 
MaskFormatter MaskFormatter is used to format and edit strings. 
NavigationFilter NavigationFilter can be used to restrict where the cursor can be positioned. 
NavigationFilter.FilterBypass Used as a way to circumvent calling back into the caret to position the cursor. 
NumberFormatter NumberFormatter subclasses InternationalFormatter adding special behavior for numbers. 
ParagraphView View of a simple line-wrapping paragraph that supports multiple fonts, colors, components, icons, etc. 
PasswordView Implements a View suitable for use in JPasswordField UI implementations. 
PlainDocument A plain document that maintains no character attributes. 
PlainView Implements View interface for a simple multi-line text view that has text in one font and color. 
Position.Bias A typesafe enumeration to indicate bias to a position in the model. 
Segment A segment of a character array representing a fragment of text. 
SimpleAttributeSet A straightforward implementation of MutableAttributeSet using a hash table. 
StringContent An implementation of the AbstractDocument.Content interface that is a brute force implementation that is useful for relatively small documents and/or debugging. 
StyleConstants

A collection of well known or common attribute keys and methods to apply to an AttributeSet or MutableAttributeSet to get/set the properties in a typesafe manner. 

StyleConstants.CharacterConstants This is a typesafe enumeration of the well-known attributes that contribute to a character style. 
StyleConstants.ColorConstants This is a typesafe enumeration of the well-known attributes that contribute to a color. 
StyleConstants.FontConstants This is a typesafe enumeration of the well-known attributes that contribute to a font. 
StyleConstants.ParagraphConstants This is a typesafe enumeration of the well-known attributes that contribute to a paragraph style. 
StyleContext A pool of styles and their associated resources. 
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. 
StyledEditorKit This is the set of things needed by a text component to be a reasonably functioning editor for some type of text document. 
StyledEditorKit.AlignmentAction An action to set paragraph alignment. 
StyledEditorKit.BoldAction An action to toggle the bold attribute. 
StyledEditorKit.FontFamilyAction An action to set the font family in the associated JEditorPane. 
StyledEditorKit.FontSizeAction An action to set the font size in the associated JEditorPane. 
StyledEditorKit.ForegroundAction An action to set foreground color. 
StyledEditorKit.ItalicAction An action to toggle the italic attribute. 
StyledEditorKit.StyledTextAction An action that assumes it's being fired on a JEditorPane with a StyledEditorKit (or subclass) installed. 
StyledEditorKit.UnderlineAction An action to toggle the underline attribute. 
TableView

Implements View interface for a table, that is composed of an element structure where the child elements of the element this view is responsible for represent rows and the child elements of the row elements are cells. 

TableView.TableCell This class is deprecated. A table cell can now be any View implementation.  
TableView.TableRow View of a row in a row-centric table. 
TabSet A TabSet is comprised of many TabStops. 
TabStop This class encapsulates a single tab stop (basically as tab stops are thought of by RTF). 
TextAction An Action implementation useful for key bindings that are shared across a number of different text components. 
Utilities A collection of methods to deal with various text related activities. 
View

A very important part of the text package is the View class. 

WrappedPlainView View of plain text (text with only one font and color) that does line-wrapping. 
ZoneView ZoneView is a View implementation that creates zones for which the child views are not created or stored until they are needed for display or model/view translations. 

Exceptions

BadLocationException This exception is to report bad locations within a document model (that is, attempts to reference a location that doesn't exist). 
ChangedCharSetException ChangedCharSetException as the name indicates is an exception thrown when the charset is changed.