IProjectionBuffer Interface
A text buffer that contains projections of other text buffers, composed of a list of tracking spans of those buffers. The buffers that contribute to the projection buffer are called source buffers, and the tracking spans that describe the contributed regions are called source spans.
Namespace: Microsoft.VisualStudio.Text.Projection
Assembly: Microsoft.VisualStudio.Text.Data (in Microsoft.VisualStudio.Text.Data.dll)
Syntax
'Declaration
Public Interface IProjectionBuffer _
Inherits IProjectionBufferBase, ITextBuffer, IPropertyOwner
public interface IProjectionBuffer : IProjectionBufferBase,
ITextBuffer, IPropertyOwner
public interface class IProjectionBuffer : IProjectionBufferBase,
ITextBuffer, IPropertyOwner
type IProjectionBuffer =
interface
interface IProjectionBufferBase
interface ITextBuffer
interface IPropertyOwner
end
public interface IProjectionBuffer extends IProjectionBufferBase, ITextBuffer, IPropertyOwner
The IProjectionBuffer type exposes the following members.
Properties
Name | Description | |
---|---|---|
ContentType | Gets the content type of the text in the buffer. (Inherited from ITextBuffer.) | |
CurrentSnapshot | Gets the current content of the buffer. (Inherited from ITextBuffer.) | |
CurrentSnapshot | Gets the current snapshot of the contents of the projection buffer. (Inherited from IProjectionBufferBase.) | |
EditInProgress | Determines whether an edit operation is currently in progress on the ITextBuffer. (Inherited from ITextBuffer.) | |
Properties | Gets the collection of properties controlled by the property owner. (Inherited from IPropertyOwner.) | |
SourceBuffers | Gets the set of ITextBuffer objects that directly contribute to the projection buffer. (Inherited from IProjectionBufferBase.) |
Top
Methods
Name | Description | |
---|---|---|
ChangeContentType | Changes the IContentType for this ITextBuffer. (Inherited from ITextBuffer.) | |
CheckEditAccess | Determines whether edit operations on this text buffer are permitted on the calling thread. (Inherited from ITextBuffer.) | |
CreateEdit() | Creates an ITextEdit object that handles compound edit operations on this buffer. (Inherited from ITextBuffer.) | |
CreateEdit(EditOptions, Nullable<Int32>, Object) | Creates an ITextEdit object that handles compound edit operations on this buffer. (Inherited from ITextBuffer.) | |
CreateReadOnlyRegionEdit | Creates an IReadOnlyRegionEdit object that handles adding or removing read-only regions from this buffer. (Inherited from ITextBuffer.) | |
Delete(Span) | Deletes a sequence of characters from the buffer. (Inherited from ITextBuffer.) | |
Delete(Span) | Deletes a span of characters from the buffer. (Inherited from IProjectionBufferBase.) | |
DeleteSpans | Deletes a sequence of source spans from the projection buffer. | |
GetReadOnlyExtents | Gets a list of read-only regions that overlap the given span. (Inherited from ITextBuffer.) | |
Insert(Int32, String) | Inserts the given text at the specified position in the ITextBuffer. (Inherited from ITextBuffer.) | |
Insert(Int32, String) | Inserts the specified text at the specified position in the ITextBuffer. (Inherited from IProjectionBufferBase.) | |
InsertSpan(Int32, ITrackingSpan) | Inserts a tracking span into the list of source spans. | |
InsertSpan(Int32, String) | Inserts a literal string into the list of source spans. | |
InsertSpans | Inserts a list of ITrackingSpan objects and/or literal strings into the list of source spans in the order in which they appear in the list. | |
IsReadOnly(Int32) | Determines whether a text insertion would be prohibited at the specified position due to an IReadOnlyRegion. (Inherited from ITextBuffer.) | |
IsReadOnly(Span) | Determines whether a text modification or deletion would be prohibited at span due to an IReadOnlyRegion. (Inherited from ITextBuffer.) | |
IsReadOnly(Int32, Boolean) | Determines whether a text insertion would be prohibited at the specified position due to an IReadOnlyRegion. (Inherited from ITextBuffer.) | |
IsReadOnly(Span, Boolean) | Determines whether a text modification or deletion would be prohibited at span due to an IReadOnlyRegion. (Inherited from ITextBuffer.) | |
Replace(Span, String) | Replaces a sequence of characters with different text. This is equivalent to first deleting the text to be replaced and then inserting the new text. (Inherited from ITextBuffer.) | |
Replace(Span, String) | Replaces a span of characters with different text. This is equivalent to first deleting the text to be replaced and then inserting the new text. (Inherited from IProjectionBufferBase.) | |
ReplaceSpans | Replaces a sequence of source spans with a new list of ITrackingSpan objects and/or literal strings. | |
TakeThreadOwnership | Claims ownership of this buffer for the current thread. All subsequent modifications of this ITextBuffer must be made from the current thread, or else an InvalidOperationException will be raised. (Inherited from ITextBuffer.) |
Top
Events
Name | Description | |
---|---|---|
Changed | Occurs when a non-empty ITextEdit is successfully applied. (Inherited from ITextBuffer.) | |
ChangedHighPriority | Occurs when a non-empty ITextEdit is successfully applied. (Inherited from ITextBuffer.) | |
ChangedLowPriority | Occurs when a non-empty ITextEdit is successfully applied. (Inherited from ITextBuffer.) | |
Changing | Occurs just before a non-empty ITextEdit is applied. (Inherited from ITextBuffer.) | |
ContentTypeChanged | Occurs whenever the IContentType has been changed. (Inherited from ITextBuffer.) | |
PostChanged | Occurs after the Changed event and any resulting edits. (Inherited from ITextBuffer.) | |
ReadOnlyRegionsChanged | Occurs when a IReadOnlyRegionEdit has created or removed read-only regions. (Inherited from ITextBuffer.) | |
SourceBuffersChanged | Raised when source buffers are added or deleted by virtue of the addition or deletion of source spans. This event is raised before the SourceSpansChanged event is raised. | |
SourceSpansChanged | Raised when source spans are added or deleted. |
Top
Remarks
For more information about projection, see the section "Projection" in Inside the Editor.