ITextView 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.
Represents a view of text in an ITextBuffer. It is the base class for a platform-specific interface that has methods to allow the formatted text to be rendered.
public interface class ITextView : Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface class ITextView : Microsoft::VisualStudio::Utilities::IPropertyOwner
__interface ITextView : Microsoft::VisualStudio::Utilities::IPropertyOwner
public interface ITextView : Microsoft.VisualStudio.Utilities.IPropertyOwner
type ITextView = interface
interface IPropertyOwner
Public Interface ITextView
Implements IPropertyOwner
- Derived
- Implements
Remarks
A text view is a platform-independent representation of a contiguous block of formatted and adorned text, accessible through the TextViewLines property. It also instantiates an instance of an IEditorOperations component part so that it can execute various commands.
The text is formatted based on the classifiers attached to the underlying ITextBuffer.
Most properties and parameters that are doubles correspond to coordinates or distances in the text rendering coordinate system. In this coordinate system, x = 0.0 corresponds to the left edge of the drawing surface onto which text is rendered (x = view.ViewportLeft corresponds to the left edge of the viewport), and y = view.ViewportTop corresponds to the top edge of the viewport. The x-coordinate increases from left to right, and the y-coordinate increases from top to bottom.
The horizontal and vertical axes of the view behave differently. When the text in the view is formatted, only the visible lines are formatted. As a result, a viewport cannot be scrolled horizontally and vertically in the same way.
A viewport is scrolled horizontally by changing the left coordinate of the viewport so that it moves with respect to the drawing surface.
A view can be scrolled vertically only by performing a new layout.
Doing a layout in the view may cause the ViewportTop property of the view to change. For example, scrolling down one line will not translate any of the visible lines. Instead it will simply change the view's ViewportTop property (causing the lines to move on the screen even though their y-coordinates have not changed).
Distances in the text rendering coordinate system correspond to logical pixels. If the text rendering surface is displayed without any scaling transform, then 1 unit in the text rendering coordinate system corresponds to one pixel on the display.
Properties
BufferGraph |
Gets the IBufferGraph that contains the set of source buffers that contribute to this view. |
Caret |
Gets the caret element. |
HasAggregateFocus |
Determines whether the view or any of its adornments has focus. |
InLayout |
Determines whether the view is in the process of being laid out. |
IsClosed |
Determines whether this text view has been closed. |
IsMouseOverViewOrAdornments |
Determines whether the mouse is over the view or any of its adornments. |
LineHeight |
Gets the nominal height of a line of text in the view. |
MaxTextRightCoordinate |
Gets the right coordinate of the longest line, whether or not that line is currently visible, in logical pixels. |
Options |
Gets the options for this text view. |
Properties |
The collection of properties controlled by the property owner. (Inherited from IPropertyOwner) |
ProvisionalTextHighlight |
Gets the span of text covered by the provisional text highlight. |
Roles |
The roles which this view plays. Roles partially determine the extensions that are instantiated for the view. |
Selection |
Gets the selection element. |
TextBuffer |
Gets the ITextBuffer whose text is rendered in this view. |
TextDataModel |
Gets the ITextDataModel of this text view. |
TextSnapshot |
Gets the ITextSnapshot of the text that is currently rendered in the view. |
TextViewLines |
Gets a read-only list of the ITextViewLine objects rendered in this view. |
TextViewModel |
Gets the ITextViewModel of this text view. |
ViewportBottom |
Gets the position of the bottom edge of the viewport in the text rendering coordinate system. |
ViewportHeight |
Gets the height of the visible content window in logical pixels. |
ViewportLeft |
Gets or sets the position of the left edge of the viewport in the text rendering coordinate system. |
ViewportRight |
Gets the position of the right edge of the viewport in the text rendering coordinate system. |
ViewportTop |
Gets the position of the top edge of the viewport in the text rendering coordinate system. |
ViewportWidth |
Gets the width of the visible content window in logical pixels. |
ViewScroller |
Gets a helper that provides various methods to scroll or manipulate the view. |
VisualSnapshot |
Gets the ITextSnapshot of the visual buffer that is being rendered. |
Methods
Close() |
Closes the text view and its view. |
DisplayTextLineContainingBufferPosition(SnapshotPoint, Double, ViewRelativePosition, Nullable<Double>, Nullable<Double>) |
Formats and displays the contents of the text buffer so that the ITextViewLine containing |
DisplayTextLineContainingBufferPosition(SnapshotPoint, Double, ViewRelativePosition) |
Formats and displays the contents of the text buffer so that the ITextViewLine containing |
GetTextElementSpan(SnapshotPoint) |
Gets the SnapshotSpan of text that constitutes a text element (a single visual representation) at the given SnapshotPoint. |
GetTextViewLineContainingBufferPosition(SnapshotPoint) |
Gets the ITextViewLine that contains the specified text buffer position. |
QueueSpaceReservationStackRefresh() |
Requests a refresh of the space reservation stack. |
Events
Closed |
Occurs immediately after the text view is closed. |
GotAggregateFocus |
Occurs when the keyboard focus switches to the view or one of its adornments. |
LayoutChanged |
Occurs whenever the text displayed in the view changes. |
LostAggregateFocus |
Occurs when the keyboard focus switches away from the view and any of its adornments. |
MouseHover |
Occurs when the mouse has hovered over the same character. |
ViewportHeightChanged |
Occurs when the viewport's height is changed. |
ViewportLeftChanged |
Occurs when the position of the viewport's left edge is changed. (e.g. when the view is horizontally scrolled) |
ViewportWidthChanged |
Occurs when the viewport's width is changed. |
Extension Methods
GetInOuterLayout(ITextView) |
Determines whether a view is in the process of being laid out or is preparing to be laid out. |
GetMultiSelectionBroker(ITextView) |
Gets an object for managing selections within the view. |
IsEmbeddedTextView(ITextView) |
Gets whether given ITextView is embedded in another ITextView. |
IsReadOnlyTextView(ITextView) |
Gets whether given ITextView is considered read-only. |
QueuePostLayoutAction(ITextView, Action) | |
TryGetContainingTextView(ITextView, ITextView) | |
TryGetTextViewLineContainingBufferPosition(ITextView, SnapshotPoint, ITextViewLine) |
See TryGetTextViewLineContainingBufferPosition(SnapshotPoint, ITextViewLine). |
TryGetTextViewLines(ITextView, ITextViewLineCollection) |