Interface AbstractDocument.Content

All Known Implementing Classes:
GapContent, StringContent
Enclosing class:
AbstractDocument
public static interface AbstractDocument.Content

Interface to describe a sequence of character content that can be edited. Implementations may or may not support a history mechanism which will be reflected by whether or not mutations return an UndoableEdit implementation.

See Also:
AbstractDocument

Method Summary

All Methods Instance Methods Abstract Methods
Modifier and Type Method Description
Position createPosition​(int offset)

Creates a position within the content that will track change as the content is mutated.

void getChars​(int where, int len, Segment txt)

Gets a sequence of characters and copies them into a Segment.

String getString​(int where, int len)

Fetches a string of characters contained in the sequence.

UndoableEdit insertString​(int where, String str)

Inserts a string of characters into the sequence.

int length()

Current length of the sequence of character content.

UndoableEdit remove​(int where, int nitems)

Removes some portion of the sequence.

Method Detail

createPosition

Position createPosition​(int offset)
                 throws BadLocationException

Creates a position within the content that will track change as the content is mutated.

Parameters:
offset - the offset in the content >= 0
Returns:
a Position
Throws:
BadLocationException - for an invalid offset

length

int length()

Current length of the sequence of character content.

Returns:
the length >= 0

insertString

UndoableEdit insertString​(int where,
                          String str)
                   throws BadLocationException

Inserts a string of characters into the sequence.

Parameters:
where - offset into the sequence to make the insertion >= 0
str - string to insert
Returns:
if the implementation supports a history mechanism, a reference to an Edit implementation will be returned, otherwise returns null
Throws:
BadLocationException - thrown if the area covered by the arguments is not contained in the character sequence

remove

UndoableEdit remove​(int where,
                    int nitems)
             throws BadLocationException

Removes some portion of the sequence.

Parameters:
where - The offset into the sequence to make the insertion >= 0.
nitems - The number of items in the sequence to remove >= 0.
Returns:
If the implementation supports a history mechanism, a reference to an Edit implementation will be returned, otherwise null.
Throws:
BadLocationException - Thrown if the area covered by the arguments is not contained in the character sequence.

getString

String getString​(int where,
                 int len)
          throws BadLocationException

Fetches a string of characters contained in the sequence.

Parameters:
where - Offset into the sequence to fetch >= 0.
len - number of characters to copy >= 0.
Returns:
the string
Throws:
BadLocationException - Thrown if the area covered by the arguments is not contained in the character sequence.

getChars

void getChars​(int where,
              int len,
              Segment txt)
       throws BadLocationException

Gets a sequence of characters and copies them into a Segment.

Parameters:
where - the starting offset >= 0
len - the number of characters >= 0
txt - the target location to copy into
Throws:
BadLocationException - Thrown if the area covered by the arguments is not contained in the character sequence.