示例#1
0
  public UndoableEdit insertString(int where, String str, boolean beforeMarkers)
      throws BadLocationException {
    CharBuffer b = buffer;
    if (where < 0 || where > b.length()) throw new BadLocationException("bad insert", where);
    b.insert(where, str, beforeMarkers);

    GapUndoableEdit undo = new GapUndoableEdit(where);
    undo.content = this;
    undo.data = str;
    undo.nitems = str.length();
    undo.isInsertion = true;
    return undo;
  }
示例#2
0
  public UndoableEdit remove(int where, int nitems) throws BadLocationException {
    CharBuffer b = buffer;
    if (nitems < 0 || where < 0 || where + nitems > b.length())
      throw new BadLocationException("invalid remove", where);

    b.delete(where, nitems);

    GapUndoableEdit undo = new GapUndoableEdit(where);
    undo.content = this;
    undo.data = new String(b.getArray(), b.gapEnd - nitems, nitems);
    undo.nitems = nitems;
    undo.isInsertion = false;
    return undo;
  }
示例#3
0
 public javax.swing.text.Position createPosition(int offset) throws BadLocationException {
   CharBuffer b = buffer;
   if (offset < 0 || offset > b.length())
     throw new BadLocationException("bad offset to createPosition", offset);
   return new GapPosition(b, offset);
 }
示例#4
0
 public int length() {
   return buffer.length();
 }