111 |
int offset = event.getOffset(); |
int offset = event.getOffset(); |
112 |
int end = offset + event.getLength(); |
int end = offset + event.getLength(); |
113 |
int elementIndex = rootElement.getElementIndex(offset); |
int elementIndex = rootElement.getElementIndex(offset); |
114 |
|
Element firstElement = rootElement.getElement(elementIndex); |
115 |
|
|
116 |
// added and removed are Element arrays used to add an ElementEdit |
// added and removed are Element arrays used to add an ElementEdit |
117 |
// to the DocumentEvent if there were entire lines added or removed. |
// to the DocumentEvent if there were entire lines added or removed. |
124 |
|
|
125 |
// Determine how many NEW lines were added by finding the newline |
// Determine how many NEW lines were added by finding the newline |
126 |
// characters within the newly inserted text |
// characters within the newly inserted text |
127 |
int j = offset; |
int j = firstElement.getStartOffset(); |
128 |
int i = str.indexOf('\n', j); |
int i = str.indexOf('\n', offset); |
129 |
while (i != -1 && i <= end) |
while (i != -1 && i <= end) |
130 |
{ |
{ |
131 |
// For each new line, create a new element |
// For each new line, create a new element |
146 |
added = new Element[elts.size()]; |
added = new Element[elts.size()]; |
147 |
for (int k = 0; k < elts.size(); ++k) |
for (int k = 0; k < elts.size(); ++k) |
148 |
added[k] = (Element) elts.get(k); |
added[k] = (Element) elts.get(k); |
149 |
removed[0] = rootElement.getElement(elementIndex); |
removed[0] = firstElement; |
150 |
|
|
151 |
// Now create and add the ElementEdit |
// Now create and add the ElementEdit |
152 |
ElementEdit e = new ElementEdit(rootElement, elementIndex, removed, |
ElementEdit e = new ElementEdit(rootElement, elementIndex, removed, |