TagAggregatorBase<T> Class
An abstract base class for an object that aggregates ITag objects from multiple ITagger<T> instances.
public abstract class TagAggregatorBase<T> : DisposableObject, ITagAggregator<T>, ITagAggregatorBase, IDisposable where T : ITag
- Type Parameters:
-
T-The type of ITag associated with this aggregator.
- Inheritance:
- object DisposableObject object
- Implements:
- ITagAggregator<T> ITagAggregatorBase IDisposable
Constructors
TagAggregatorBase()
Initializes a new instance of the TagAggregatorBase class.
protected TagAggregatorBase()
TagAggregatorBase(bool)
Initializes a new instance of the TagAggregatorBase class.
protected TagAggregatorBase(bool canAttachToEvents)
| Parameter | Type | Description |
|---|---|---|
| canAttachToEvents | bool | Whether to attach to events such as document language changes. |
Properties
CanAttachToEvents
Gets whether the tag aggregator can attach to events.
IsDisposed
Gets whether this object has been disposed.
protected bool IsDisposed { get; }
Property Value
- bool:
trueif this object has been disposed; otherwise,false.
Methods
AttachDocument(ICodeDocument)
Attaches to a new document.
protected void AttachDocument(ICodeDocument newDocument)
| Parameter | Type | Description |
|---|---|---|
| newDocument | ICodeDocument | The new ICodeDocument. |
DetachDocument()
Detaches the document.
protected void DetachDocument()
Dispose(bool)
Releases the unmanaged resources used by the object and optionally releases the managed resources.
protected override void Dispose(bool disposing)
| Parameter | Type | Description |
|---|---|---|
| disposing | bool |
|
Remarks
This method is called by the public Dispose method and the Finalize method.
Dispose invokes this method with the disposing parameter set to true.
Finalize invokes this method with disposing set to false.
GetTaggers()
Returns the list of available taggers.
protected virtual IList<ITagger<T>> GetTaggers()
Returns
GetTags(NormalizedTextSnapshotRangeCollection, object)
Returns the tag ranges that intersect with the specified normalized snapshot ranges.
public IEnumerable<TagSnapshotRange<T>> GetTags(NormalizedTextSnapshotRangeCollection snapshotRanges, object parameter)
| Parameter | Type | Description |
|---|---|---|
| snapshotRanges | NormalizedTextSnapshotRangeCollection | The collection of normalized snapshot ranges. |
| parameter | object | An optional parameter that provides contextual information about the tag request. |
Returns
- IEnumerable<TagSnapshotRange<T>>:
The tag ranges that intersect with the specified normalized snapshot ranges.
GetTags(params TextSnapshotRange[])
Returns the tag ranges that intersect with the specified snapshot ranges.
public IEnumerable<TagSnapshotRange<T>> GetTags(params TextSnapshotRange[] snapshotRanges)
| Parameter | Type | Description |
|---|---|---|
| snapshotRanges | TextSnapshotRange[] | The array of snapshot ranges. |
Returns
- IEnumerable<TagSnapshotRange<T>>:
The tag ranges that intersect with the specified snapshot ranges.
IsRefreshRequired(object)
Returns whether a Refresh() is required when the specified service is added to or removed from the document's language.
protected virtual bool IsRefreshRequired(object service)
| Parameter | Type | Description |
|---|---|---|
| service | object | The service to examine. |
Returns
- bool:
trueif a refresh is required; otherwise,false.
OnTagsChanged(TagsChangedEventArgs)
Raises the TagsChanged event.
protected virtual void OnTagsChanged(TagsChangedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TagsChangedEventArgs | A |
Refresh()
Refreshes the tag aggregator by reloading the taggers being watched.
protected void Refresh()
Events
TagsChanged
Occurs after available tags for a specified TextSnapshotRange have changed.
public event EventHandler<TagsChangedEventArgs> TagsChanged