Partager via


IProjectionBuffer Interface

Definition

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.

public interface class IProjectionBuffer : Microsoft::VisualStudio::Text::Projection::IProjectionBufferBase, Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface class IProjectionBuffer : Microsoft::VisualStudio::Text::Projection::IProjectionBufferBase, Microsoft::VisualStudio::Utilities::IPropertyOwner
__interface IProjectionBuffer : Microsoft::VisualStudio::Text::Projection::IProjectionBufferBase, Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface IProjectionBuffer : Microsoft.VisualStudio.Text.Projection.IProjectionBufferBase, Microsoft.VisualStudio.Utilities.IPropertyOwner
type IProjectionBuffer = interface
    interface IProjectionBufferBase
    interface ITextBuffer
    interface IPropertyOwner
Public Interface IProjectionBuffer
Implements IProjectionBufferBase, IPropertyOwner
Implements

Remarks

For more information about projection, see the section "Projection" in Inside the Editor.

Properties

ContentType

Gets the content type of the text in the buffer.

(Inherited from ITextBuffer)
CurrentSnapshot

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

The collection of properties controlled by the property owner.

(Inherited from IPropertyOwner)
SourceBuffers

The set of ITextBuffer objects that directly contribute to the projection buffer.

(Inherited from IProjectionBufferBase)

Methods

ChangeContentType(IContentType, Object)

Changes the IContentType for this ITextBuffer.

(Inherited from ITextBuffer)
CheckEditAccess()

Determines whether edit operations on this text buffer are permitted on the calling thread. If TakeThreadOwnership() has previously been called, edit operations are permitted only from the same thread that made that call.

(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 span of characters from the buffer.

(Inherited from IProjectionBufferBase)
DeleteSpans(Int32, Int32)

Deletes a sequence of source spans from the projection buffer.

GetReadOnlyExtents(Span)

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 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 SourceSpans.

InsertSpans(Int32, IList<Object>)

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, Boolean)

Determines whether a text insertion would be prohibited at position due to an IReadOnlyRegion.

(Inherited from ITextBuffer)
IsReadOnly(Int32)

Determines whether a text insertion would be prohibited at 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)
IsReadOnly(Span)

Determines whether a text modification or deletion would be prohibited at span due to an IReadOnlyRegion

(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(Int32, Int32, IList<Object>, EditOptions, Object)

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)

Events

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 an 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. It is not raised when the contents of a source span change, for example when a source span becomes empty. When a nonempty span is added or deleted, the SourceBuffersChanged event will be raised first. The sequence of events is: 1) SourceBuffersChanged, 2) SourceSpansChanged, 3) ITextBuffer.Changed. The SourceSpansChanged event is raised first).

Applies to