javax.swing.text
public class GapContent extends Object implements AbstractDocument.Content, Serializable
Constructor Summary | |
---|---|
GapContent()
Creates a new GapContent object. | |
GapContent(int size)
Creates a new GapContent object with a specified initial size.
|
Method Summary | |
---|---|
protected Object | allocateArray(int size)
Allocates an array of the specified length that can then be used as
buffer.
|
Position | createPosition(int offset)
Creates and returns a mark at the specified position.
|
protected Object | getArray()
Returns the allocated buffer array.
|
protected int | getArrayLength()
Returns the length of the allocated buffer array.
|
void | getChars(int where, int len, Segment txt)
Fetches a piece of content and stores it in a {@link Segment} object.
|
protected int | getGapEnd()
Returns the end index of the gap within the buffer array.
|
protected int | getGapStart()
Returns the start index of the gap within the buffer array.
|
protected Vector | getPositionsInRange(Vector v, int offset, int length)
Returns all Position s that are in the range specified by
offset and length within the buffer array.
|
String | getString(int where, int len)
Returns a piece of content as String.
|
UndoableEdit | insertString(int where, String str)
Inserts a string at the specified position.
|
int | length()
Returns the length of the content.
|
UndoableEdit | remove(int where, int nitems)
Removes a piece of content at th specified position.
|
protected void | replace(int position, int rmSize, Object addItems, int addSize)
Replaces a portion of the storage with the specified items.
|
protected void | resetMarksAtZero()
Resets all Position that have an offset of 0 ,
to also have an array index of 0 . |
protected void | shiftEnd(int newSize)
Enlarges the gap. |
protected void | shiftGap(int newGapStart)
Shifts the gap to the specified position.
|
protected void | shiftGapEndUp(int newGapEnd)
Shifts the gap end upwards. |
protected void | shiftGapStartDown(int newGapStart)
Shifts the gap start downwards. |
protected void | updateUndoPositions(Vector positions, int offset, int length)
Resets the positions in the specified range to their original offset
after a undo operation is performed. |
Parameters: size the initial size of the buffer
Parameters: size the size of the array to be allocated
Returns: the allocated array
Parameters: offset the position at which to create the mark
Returns: the create Position object for the mark
Throws: BadLocationException if the offset is not a valid position in the buffer
Returns: the allocated buffer array
Returns: the length of the allocated buffer array
Parameters: where the start location of the fragment len the length of the fragment txt the Segment object to store the fragment in
Throws: BadLocationException if where
or
where + len
are no valid locations in the buffer
Returns: the end index of the gap within the buffer array
Returns: the start index of the gap within the buffer array
Position
s that are in the range specified by
offset
and length within the buffer array.
Parameters: v the vector to use; if null
, a new Vector is allocated offset the start offset of the range to search length the length of the range to search
Returns: the positions within the specified range
Parameters: where the start location of the fragment len the length of the fragment
Throws: BadLocationException if where
or
where + len
are no valid locations in the buffer
Parameters: where the position where the string is inserted str the string that is to be inserted
Returns: an UndoableEdit object
Throws: BadLocationException if where
is not a valid
location in the buffer
Returns: the length of the content
Parameters: where the position where the content is to be removed nitems number of characters to be removed
Returns: an UndoableEdit object
Throws: BadLocationException if where
is not a valid
location in the buffer
Parameters: position the position at which to remove items rmSize the number of items to remove addItems the items to add at location addSize the number of items to add
Position
that have an offset of 0
,
to also have an array index of 0
. This might be necessary
after a call to shiftGap(0)
, since then the marks at offset
0
get shifted to gapEnd
.Parameters: newSize the new size of the gap
Parameters: newGapStart the new start position of the gap
Parameters: newGapEnd the new gap start
Parameters: newGapStart the new gap start
Parameters: positions the positions to update offset length