javax.swing.text

## 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

Methods
`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 mechansim, 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.

Copyright © 1993, 2017, Oracle and/or its affiliates. All rights reserved.