Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/microsoft/vs-editor-api.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/Text/Def/TextUI/MultiCaret/AbstractSelectionPresentationProperties.cs')
-rw-r--r--src/Text/Def/TextUI/MultiCaret/AbstractSelectionPresentationProperties.cs49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/Text/Def/TextUI/MultiCaret/AbstractSelectionPresentationProperties.cs b/src/Text/Def/TextUI/MultiCaret/AbstractSelectionPresentationProperties.cs
new file mode 100644
index 0000000..351d733
--- /dev/null
+++ b/src/Text/Def/TextUI/MultiCaret/AbstractSelectionPresentationProperties.cs
@@ -0,0 +1,49 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for license information.
+//
+
+using Microsoft.VisualStudio.Text.Formatting;
+
+namespace Microsoft.VisualStudio.Text
+{
+ /// <summary>
+ /// Provides UI specific properties about an <see cref="Selection"/>.
+ /// </summary>
+ public abstract class AbstractSelectionPresentationProperties
+ {
+ /// <summary>
+ /// Gets the position that the caret prefers to occupy on a given line. This position may not be honored
+ /// if virtual space is off and the line is insufficiently long. See <see cref="CaretBounds"/> for the
+ /// actual location.
+ /// </summary>
+ public virtual double PreferredXCoordinate { get; protected set; }
+
+ /// <summary>
+ /// Gets the position that the caret prefers to occupy vertically in the view. This position is used for operations
+ /// such as page up/down, but may not be honored if there is an adornment at the desired location. See
+ /// <see cref="CaretBounds"/> for the actual location.
+ /// </summary>
+ public virtual double PreferredYCoordinate { get; protected set; }
+
+ /// <summary>
+ /// Gets the caret location and size.
+ /// </summary>
+ public virtual TextBounds CaretBounds { get; }
+
+ /// <summary>
+ /// Gets whether the caret is shown in its entirety on the screen.
+ /// </summary>
+ public virtual bool IsWithinViewport { get; }
+
+ /// <summary>
+ /// Gets whether the caret should be rendered as overwrite.
+ /// </summary>
+ public virtual bool IsOverwriteMode { get; }
+
+ /// <summary>
+ /// Gets the <see cref="ITextViewLine"/> that contains the <see cref="Selection.InsertionPoint"/>.
+ /// </summary>
+ public virtual ITextViewLine ContainingTextViewLine { get; }
+ }
+}