PipelinedViewerUpdateas the input and return type from intercept methods on
Clients should use the viewer update to describe how the request from the
upstream extension (see
IPipelinedTreeContentProvider for more
information on upstream extensions) should be reshaped when applied
to the tree. A request from an upstream extension to refresh a given element
could result in multiple refresh requests from downstream extensions.
Therefore, the refresh targets are modeled as a set.
Initially, this set will contain the original element that was passed to the refresh requests. Clients may squash the refresh by clearing the set, change the original target by removing the current element and adding a new target, or expand the refresh by adding more elements to the set.
A pipelined extension may receive a
PipelinedViewerUpdate as the
result of a call to
ColumnViewer.update(Object, String)-methods. The
properties field is only applicable for
calls and the
updateLabels field is only applicable for
getPropertiesProperties allow optimization for
aTarget- The target which may have specific properties associated with it for an optimized refresh.
- Returns the properties for the given target. If no properties are specified, then an empty array is returned. null will never be returned.
setPropertiesProperties allow optimization for
aTarget- The target of the properties.
theProperties- The properties to pass along to the
- See Also:
getRefreshTargetspublic final Set getRefreshTargets()
- Returns the current set of refresh targets. Clients may add or remove directly to or from this set.
isUpdateLabelspublic final boolean isUpdateLabels()
- Returns the true if the labels should also be updated during the
setUpdateLabelspublic final void setUpdateLabels
toUpdateLabels- True indicates that calls to
refreshshould force the update of the labels in addition to refreshing the structure.