/** Commits all buffered replace commands. */
  private void commit() {

    if (fReplaceList.size() == 0) return;

    StringBuffer buffer = new StringBuffer();

    int delta = 0;
    for (Iterator i = fReplaceList.iterator(); i.hasNext(); ) {
      Replace replace = (Replace) i.next();

      int offset = buffer.length() - delta;
      buffer.append(fSource.get(offset, replace.offset - offset));
      buffer.append(replace.text);
      delta = getDelta(replace);
    }

    int offset = buffer.length() - delta;
    buffer.append(fSource.get(offset, fSource.getLength() - offset));

    fSource.set(buffer.toString());
    fReplaceList.clear();
  }
 /*
  * @see org.eclipse.jface.text.ITextStore#set(java.lang.String)
  */
 public void set(String text) {
   fSource.set(text);
   fReplaceList.clear();
 }