public void ReflectTextChange(int start, int oldLength, int newLength) {
// Note that shifting tree elements also shifts artifacts in
// element attributes. We need to track these changes in order
// to avoid double shifts in artifacts.
int offset = newLength - oldLength;
RootNode.ShiftStartingFrom(start, offset);
CommentCollection.ReflectTextChange(start, oldLength, newLength);
}
}