Class ElementChangeListenerContribution
- java.lang.Object
-
- org.eclipse.handly.ui.outline.OutlineContribution
-
- org.eclipse.handly.ui.outline.ElementChangeListenerContribution
-
- All Implemented Interfaces:
IOutlineContribution
public abstract class ElementChangeListenerContribution extends OutlineContribution
An abstract base class for outline contributions listening toIElementChangeEvents.
-
-
Constructor Summary
Constructors Constructor Description ElementChangeListenerContribution()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidaddElementChangeListener(IElementChangeListener listener)Registers the given element change listener with the underlying model.protected booleanaffects(IElementChangeEvent event, java.lang.Object inputElement)Returns whether the given element change event affects the outline's input element.protected booleanaffects(IElementDelta delta, IElement element)Returns whether the given element delta affects the given element.voiddispose()Disposes of this contribution.protected abstract voidelementChanged(IElementChangeEvent event)Notifies that the outline page is affected in some way by the given element change event.protected IContentAdaptergetContentAdapter()Returns the installed content adapter, or aNullContentAdapterif none.voidinit(ICommonOutlinePage outlinePage)Initializes this contribution.protected abstract voidremoveElementChangeListener(IElementChangeListener listener)Removes the given element change listener from the underlying model.-
Methods inherited from class org.eclipse.handly.ui.outline.OutlineContribution
getOutlinePage
-
-
-
-
Method Detail
-
init
public void init(ICommonOutlinePage outlinePage)
Initializes this contribution. This method is called after the outline page's tree viewer has been created.This method may be extended by subclasses. Subclasses must call the superclass implementation.
ElementChangeListenerContributionextends this method toregisteran element change listener that invokeselementChanged(IElementChangeEvent)if the element change eventaffectsthe outline's input element.- Specified by:
initin interfaceIOutlineContribution- Overrides:
initin classOutlineContribution- Parameters:
outlinePage- the contribution's outline page (nevernull)
-
dispose
public void dispose()
Description copied from class:OutlineContributionDisposes of this contribution. Implementors should clean up any resources associated with this contribution. Note that there is no guarantee thatinit()has been called. This method has no effect if this contribution has already been disposed.This method may be extended by subclasses. Subclasses must call the superclass implementation.
- Specified by:
disposein interfaceIOutlineContribution- Overrides:
disposein classOutlineContribution
-
affects
protected boolean affects(IElementChangeEvent event, java.lang.Object inputElement)
Returns whether the given element change event affects the outline's input element.This implementation uses the
content adapterto adapt the input element to anIElement. It then delegates toaffects(IElementDelta, IElement).- Parameters:
event- nevernullinputElement- may benull- Returns:
trueif the given element change event affects the outline's input element, andfalseotherwise
-
affects
protected boolean affects(IElementDelta delta, IElement element)
Returns whether the given element delta affects the given element.This implementation checks whether the given element delta tree contains a delta that designates a
structural changeto the given element.- Parameters:
delta- nevernullelement- nevernull- Returns:
trueif the given delta affects the given element, andfalseotherwise
-
addElementChangeListener
protected abstract void addElementChangeListener(IElementChangeListener listener)
Registers the given element change listener with the underlying model.- Parameters:
listener- nevernull
-
removeElementChangeListener
protected abstract void removeElementChangeListener(IElementChangeListener listener)
Removes the given element change listener from the underlying model.- Parameters:
listener- nevernull
-
elementChanged
protected abstract void elementChanged(IElementChangeEvent event)
Notifies that the outline page is affected in some way by the given element change event.Note: This method may be called in any thread. The event object (and the deltas within it) is valid only for the duration of the invocation of this method.
- Parameters:
event- nevernull
-
getContentAdapter
protected IContentAdapter getContentAdapter()
Returns the installed content adapter, or aNullContentAdapterif none.This implementation returns the content adapter provided by the outline page, if the outline page is an
IContentAdapterProvider.- Returns:
- an
IContentAdapter(nevernull)
-
-