IVsTextBuffer Interface
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Acts as the base interface for the VsTextBuffer object and provides general information about the text buffer's properties. Also see IVsTextBufferEx, which adds GetTrackChanges and SetTrackChangesSuppression methods.
public interface class IVsTextBuffer
public interface class IVsTextBuffer
__interface IVsTextBuffer
[System.Runtime.InteropServices.Guid("C08E5275-0D26-4DE9-8892-994024C23750")]
[System.Runtime.InteropServices.InterfaceType(1)]
public interface IVsTextBuffer
[System.Runtime.InteropServices.Guid("C08E5275-0D26-4DE9-8892-994024C23750")]
[System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)]
public interface IVsTextBuffer
[<System.Runtime.InteropServices.Guid("C08E5275-0D26-4DE9-8892-994024C23750")>]
[<System.Runtime.InteropServices.InterfaceType(1)>]
type IVsTextBuffer = interface
[<System.Runtime.InteropServices.Guid("C08E5275-0D26-4DE9-8892-994024C23750")>]
[<System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)>]
type IVsTextBuffer = interface
Public Interface IVsTextBuffer
- Derived
- Attributes
Remarks
The IVsTextBuffer
interface provides basic services and text buffer properties, and is used by many clients. It contains information such as whether the buffer is read-only, whether the buffer has been modified, and which language service is associated with the buffer.
Important
Starting in Visual Studio 2010, you should access the text buffer on the UI thread, not on background threads. The text buffer no longer gets locked when you call LockBuffer or LockBufferEx. Similarly, the UnlockBuffer and UnlockBufferEx methods no longer have any effect.
IVsTextBuffer
fires the IVsTextBufferEvents interface when there is a change in the language service. At the same time, the system notifies you of the switch to a different language service.
For the current buffer implementation, it is faster to read data from the interface IVsTextLines than to use IVsTextBuffer
.
The position values used in this interface are a zero-based character index into a Unicode stream. It is always the caller's responsibility to ensure that requests do not index positions past the end of the buffer. Call the method GetSize to determine the character index position.
Notes to Callers
This interface is implemented as part of the VsTextBuffer object. As a VSPackage
implementer, you call QueryInterface
to get a pointer to the IVsTextBuffer
interface when using the core editor objects.
Methods
GetLanguageServiceID(Guid) |
Returns the unique identifier of the language that is providing colorization and other attribute data to this buffer. |
GetLastLineIndex(Int32, Int32) |
Returns the last line in the text buffer. |
GetLengthOfLine(Int32, Int32) |
Returns the length of a line in the buffer. |
GetLineCount(Int32) |
Returns the number of lines in the buffer. |
GetLineIndexOfPosition(Int32, Int32, Int32) |
Returns the line and column numbers in the text buffer, given a position number. |
GetPositionOfLine(Int32, Int32) |
Returns the position number of a line. |
GetPositionOfLineIndex(Int32, Int32, Int32) |
Returns the position number in the text buffer, given a line and column number. |
GetSize(Int32) |
Returns the size in characters of the buffer. |
GetStateFlags(UInt32) |
Returns the state flags of the text buffer. |
GetUndoManager(IOleUndoManager) |
Returns the undo manager for this buffer. |
InitializeContent(String, Int32) |
Initializes the content of the text buffer. |
LockBuffer() |
Has no effect. Deprecated. |
LockBufferEx(UInt32) |
Has no effect. Deprecated. |
Reload(Int32) |
Reloads the text buffer. |
Reserved1() |
Reserved in the Vtable for future use. |
Reserved10() |
Reserved in the Vtable for future use. |
Reserved2() |
Reserved in the Vtable for future use. |
Reserved3() |
Reserved in the Vtable for future use. |
Reserved4() |
Reserved in the Vtable for future use. |
Reserved5() |
Reserved in the Vtable for future use. |
Reserved6() |
Reserved in the Vtable for future use. |
Reserved7() |
Reserved in the Vtable for future use. |
Reserved8() |
Reserved in the Vtable for future use. |
Reserved9() |
Reserved in the Vtable for future use. |
SetLanguageServiceID(Guid) |
Sets the unique identifier of the language that is providing colorization and other attribute data to the buffer. |
SetStateFlags(UInt32) |
Sets the state flags of the text buffer. |
UnlockBuffer() |
Has no effect. Deprecated. |
UnlockBufferEx(UInt32) |
Has no effect. Deprecated. |