javax.swing.text

Interface Document

public interface Document

A Document is the model that backs up all text components in Swing. This interface supports different kinds of implementations, from simple plain text model up to complex styled HTML or RTF models.
Field Summary
StringStreamDescriptionProperty
The key for the property that describes the source of a document.
StringTitleProperty
The key for the property that is the title of a document.
Method Summary
voidaddDocumentListener(DocumentListener listener)
Adds a {@link DocumentListener} to this document.
voidaddUndoableEditListener(UndoableEditListener listener)
Adds an {@link UndoableEditListener} to this document.
PositioncreatePosition(int offs)
Creates a mark in the character content at the specified offset.
ElementgetDefaultRootElement()
Returns the default root element.
PositiongetEndPosition()
Returns the position that marks the end of the document.
intgetLength()
Returns the length of the document content.
ObjectgetProperty(Object key)
Returns a document property with the specified key.
Element[]getRootElements()
Returns the root elements of the document content.
PositiongetStartPosition()
Returns the position that marks the beginning of the document content.
StringgetText(int offset, int length)
Returns the textual content starting at offset with a length of length.
voidgetText(int offset, int length, Segment txt)
Fetch the textual content starting at offset with a length of length and store it in txt.
voidinsertString(int offset, String str, AttributeSet a)
Inserts a piece of text with an AttributeSet at the specified offset.
voidputProperty(Object key, Object value)
Sets a document property.
voidremove(int offs, int len)
Removes a piece of content.
voidremoveDocumentListener(DocumentListener listener)
Removes a DocumentListener from this Document.
voidremoveUndoableEditListener(UndoableEditListener listener)
Removes an UndoableEditListener from this Document.
voidrender(Runnable r)
This allows the Document to be rendered safely.

Field Detail

StreamDescriptionProperty

public String StreamDescriptionProperty
The key for the property that describes the source of a document.

TitleProperty

public String TitleProperty
The key for the property that is the title of a document.

Method Detail

addDocumentListener

public void addDocumentListener(DocumentListener listener)
Adds a {@link DocumentListener} to this document.

Parameters: listener the DocumentListener to add

addUndoableEditListener

public void addUndoableEditListener(UndoableEditListener listener)
Adds an {@link UndoableEditListener} to this document.

Parameters: listener the UndoableEditListener to add

createPosition

public Position createPosition(int offs)
Creates a mark in the character content at the specified offset.

Parameters: offs the offset where to place the mark

Returns: the created Position object

Throws: BadLocationException of the specified offset is not a valid position in the documents content

getDefaultRootElement

public Element getDefaultRootElement()
Returns the default root element. Views should be using this element unless other mechanisms for assigning views to element structure is provided.

Returns: the default root element

getEndPosition

public Position getEndPosition()
Returns the position that marks the end of the document.

Returns: the position that marks the end of the document

getLength

public int getLength()
Returns the length of the document content.

Returns: the length of the document content

getProperty

public Object getProperty(Object key)
Returns a document property with the specified key.

Parameters: key the (non-null) key for the property to fetch

Returns: the property for key or null if no such property is stored

getRootElements

public Element[] getRootElements()
Returns the root elements of the document content.

Returns: the root elements of the document content

getStartPosition

public Position getStartPosition()
Returns the position that marks the beginning of the document content.

Returns: the start position

getText

public String getText(int offset, int length)
Returns the textual content starting at offset with a length of length.

Parameters: offset the beginning of the text fragment to fetch length the length of the text fragment to fetch

Returns: the text fragment starting at offset with a length of length

Throws: BadLocationException if offset or length are no valid locations in the document content

getText

public void getText(int offset, int length, Segment txt)
Fetch the textual content starting at offset with a length of length and store it in txt.

Parameters: offset the beginning of the text fragment to fetch length the length of the text fragment to fetch txt the Segment where to store the text fragment

Throws: BadLocationException if offset or length are no valid locations in the document content

insertString

public void insertString(int offset, String str, AttributeSet a)
Inserts a piece of text with an AttributeSet at the specified offset.

Parameters: offset the location where to insert the content str the textual content to insert a the Attributes associated with the piece of text

Throws: BadLocationException if offset is not a valid location in the document content

putProperty

public void putProperty(Object key, Object value)
Sets a document property.

Parameters: key the key of the property value the value of the property

remove

public void remove(int offs, int len)
Removes a piece of content.

Parameters: offs the location of the fragment to remove len the length of the fragment to remove

Throws: BadLocationException if offs or len are no valid locations in the document content

removeDocumentListener

public void removeDocumentListener(DocumentListener listener)
Removes a DocumentListener from this Document.

Parameters: listener the DocumentListener to remove

removeUndoableEditListener

public void removeUndoableEditListener(UndoableEditListener listener)
Removes an UndoableEditListener from this Document.

Parameters: listener the UndoableEditListener to remove

render

public void render(Runnable r)
This allows the Document to be rendered safely. It is made sure that the Runnable can read the document without any changes while reading. The Runnable is not allowed to change the Document itself.

Parameters: r the Runnable that renders the Document