Share via


IElisionBuffer Interface

A restricted projection buffer that has exactly one source buffer. Spans from the source buffer must appear in the same order in the projection buffer as in the source buffer.

Namespace:  Microsoft.VisualStudio.Text.Projection
Assembly:  Microsoft.VisualStudio.Text.Data (in Microsoft.VisualStudio.Text.Data.dll)

Syntax

'Declaration
Public Interface IElisionBuffer _
    Inherits IProjectionBufferBase, ITextBuffer, IPropertyOwner
public interface IElisionBuffer : IProjectionBufferBase, 
    ITextBuffer, IPropertyOwner
public interface class IElisionBuffer : IProjectionBufferBase, 
    ITextBuffer, IPropertyOwner
type IElisionBuffer =  
    interface 
        interface IProjectionBufferBase 
        interface ITextBuffer 
        interface IPropertyOwner 
    end
public interface IElisionBuffer extends IProjectionBufferBase, ITextBuffer, IPropertyOwner

The IElisionBuffer type exposes the following members.

Properties

  Name Description
Public property ContentType Gets the content type of the text in the buffer. (Inherited from ITextBuffer.)
Public property CurrentSnapshot Gets the current snapshot of this elision buffer.
Public property EditInProgress Determines whether an edit operation is currently in progress on the ITextBuffer. (Inherited from ITextBuffer.)
Public property Options Gets the ElisionBufferOptions in effect for this IElisionBuffer.
Public property Properties Gets the collection of properties controlled by the property owner. (Inherited from IPropertyOwner.)
Public property SourceBuffer Gets the source buffer of this elision buffer.
Public property SourceBuffers Gets the set of ITextBuffer objects that directly contribute to the projection buffer. (Inherited from IProjectionBufferBase.)

Top

Methods

  Name Description
Public method ChangeContentType Changes the IContentType for this ITextBuffer. (Inherited from ITextBuffer.)
Public method CheckEditAccess Determines whether edit operations on this text buffer are permitted on the calling thread. (Inherited from ITextBuffer.)
Public method CreateEdit() Creates an ITextEdit object that handles compound edit operations on this buffer. (Inherited from ITextBuffer.)
Public method CreateEdit(EditOptions, Nullable<Int32>, Object) Creates an ITextEdit object that handles compound edit operations on this buffer. (Inherited from ITextBuffer.)
Public method CreateReadOnlyRegionEdit Creates an IReadOnlyRegionEdit object that handles adding or removing read-only regions from this buffer. (Inherited from ITextBuffer.)
Public method Delete Deletes a span of characters from the buffer. (Inherited from IProjectionBufferBase.)
Public method ElideSpans Hides the text designated in the specified spans.
Public method ExpandSpans Expands the text specified by the specified spans.
Public method GetReadOnlyExtents Gets a list of read-only regions that overlap the given span. (Inherited from ITextBuffer.)
Public method Insert Inserts the specified text at the specified position in the ITextBuffer. (Inherited from IProjectionBufferBase.)
Public method IsReadOnly(Int32) Determines whether a text insertion would be prohibited at the specified position due to an IReadOnlyRegion. (Inherited from ITextBuffer.)
Public method IsReadOnly(Span) Determines whether a text modification or deletion would be prohibited at span due to an IReadOnlyRegion. (Inherited from ITextBuffer.)
Public method IsReadOnly(Int32, Boolean) Determines whether a text insertion would be prohibited at the specified position due to an IReadOnlyRegion. (Inherited from ITextBuffer.)
Public method IsReadOnly(Span, Boolean) Determines whether a text modification or deletion would be prohibited at span due to an IReadOnlyRegion. (Inherited from ITextBuffer.)
Public method ModifySpans Modifies the exposed text by hiding spansToElide and then expanding the specified spans in a single transaction.
Public method Replace 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.)
Public method 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
Public event Changed Occurs when a non-empty ITextEdit is successfully applied. (Inherited from ITextBuffer.)
Public event ChangedHighPriority Occurs when a non-empty ITextEdit is successfully applied. (Inherited from ITextBuffer.)
Public event ChangedLowPriority Occurs when a non-empty ITextEdit is successfully applied. (Inherited from ITextBuffer.)
Public event Changing Occurs just before a non-empty ITextEdit is applied. (Inherited from ITextBuffer.)
Public event ContentTypeChanged Occurs whenever the IContentType has been changed. (Inherited from ITextBuffer.)
Public event PostChanged Occurs after the Changed event and any resulting edits. (Inherited from ITextBuffer.)
Public event ReadOnlyRegionsChanged Occurs when a IReadOnlyRegionEdit has created or removed read-only regions. (Inherited from ITextBuffer.)
Public event SourceSpansChanged Occurs when there are changes to the set of hidden spans.

Top

Remarks

The source spans of an elision buffer are all EdgeInclusive. Consequently, if all the contents of a source span are deleted, and later an insertion is made at the location of that span in the source buffer, the insertion will appear in the elision buffer.

See Also

Reference

Microsoft.VisualStudio.Text.Projection Namespace