Lines 306-330
Link Here
|
306 |
return (javaElement instanceof ICompilationUnit) && JavaModelUtil.isEditable((ICompilationUnit)javaElement); |
306 |
return (javaElement instanceof ICompilationUnit) && JavaModelUtil.isEditable((ICompilationUnit)javaElement); |
307 |
} |
307 |
} |
308 |
|
308 |
|
309 |
/* |
309 |
/** |
310 |
* This is a copy of the internal JavaOutlinePage.ElementChangedListener#isPossibleStructuralChange method. |
310 |
* This is a modified copy of the internal JavaOutlinePage.ElementChangedListener#findElement |
311 |
* @see org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.ElementChangedListener#isPossibleStructuralChange(IJavaElementDelta) |
311 |
* method. |
312 |
* @since 3.5 |
312 |
* <p> |
313 |
*/ |
313 |
* When the given Java element equals the one from delta this method doesn't make an additional |
314 |
private boolean isPossibleStructuralChange(IJavaElementDelta cuDelta) { |
314 |
* check if this is a potential structural change. Treats any change affecting the element as |
315 |
if (cuDelta.getKind() != IJavaElementDelta.CHANGED) { |
315 |
* relevant and returns the delta right away. |
316 |
return true; // add or remove |
316 |
* |
317 |
} |
317 |
* @param unit the element to test |
318 |
int flags= cuDelta.getFlags(); |
318 |
* @param delta the Java element delta |
319 |
if ((flags & IJavaElementDelta.F_CHILDREN) != 0) { |
319 |
* @return the delta if the given element is affected by it or <code>null</code> otherwise |
320 |
return true; |
320 |
* |
321 |
} |
321 |
* @see org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.ElementChangedListener#findElement(IJavaElement, |
322 |
return (flags & (IJavaElementDelta.F_CONTENT | IJavaElementDelta.F_FINE_GRAINED)) == IJavaElementDelta.F_CONTENT; |
322 |
* IJavaElementDelta) |
323 |
} |
|
|
324 |
|
325 |
/* |
326 |
* This is a copy of the internal JavaOutlinePage.ElementChangedListener#findElement method. |
327 |
* @see org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.ElementChangedListener#findElement(IJavaElement, IJavaElementDelta) |
328 |
* @since 3.5 |
323 |
* @since 3.5 |
329 |
*/ |
324 |
*/ |
330 |
protected IJavaElementDelta findJavaElementDelta(IJavaElement unit, IJavaElementDelta delta) { |
325 |
protected IJavaElementDelta findJavaElementDelta(IJavaElement unit, IJavaElementDelta delta) { |
Lines 335-347
Link Here
|
335 |
IJavaElement element= delta.getElement(); |
330 |
IJavaElement element= delta.getElement(); |
336 |
|
331 |
|
337 |
if (unit.equals(element)) { |
332 |
if (unit.equals(element)) { |
338 |
if (isPossibleStructuralChange(delta)) { |
333 |
return delta; |
339 |
return delta; |
|
|
340 |
} |
341 |
return null; |
342 |
} |
334 |
} |
343 |
|
335 |
|
344 |
|
|
|
345 |
if (element.getElementType() > IJavaElement.CLASS_FILE) |
336 |
if (element.getElementType() > IJavaElement.CLASS_FILE) |
346 |
return null; |
337 |
return null; |
347 |
|
338 |
|