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/Editor/Language/Def/Intellisense/IPopupIntellisensePresenter.cs')
-rw-r--r--src/Editor/Language/Def/Intellisense/IPopupIntellisensePresenter.cs75
1 files changed, 75 insertions, 0 deletions
diff --git a/src/Editor/Language/Def/Intellisense/IPopupIntellisensePresenter.cs b/src/Editor/Language/Def/Intellisense/IPopupIntellisensePresenter.cs
new file mode 100644
index 0000000..8b00604
--- /dev/null
+++ b/src/Editor/Language/Def/Intellisense/IPopupIntellisensePresenter.cs
@@ -0,0 +1,75 @@
+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+// Copyright (c) Microsoft Corporation. All rights reserved.
+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+using System;
+using System.Windows;
+using Microsoft.VisualStudio.Text;
+using Microsoft.VisualStudio.Text.Adornments;
+
+namespace Microsoft.VisualStudio.Language.Intellisense
+{
+ /// <summary>
+ /// Defines an IntelliSense presenter that is rendered as a popup within an
+ /// <see cref="Microsoft.VisualStudio.Text.Editor.ITextView"/>.
+ /// </summary>
+ public interface IPopupIntellisensePresenter : IIntellisensePresenter
+ {
+ /// <summary>
+ /// Gets the WPF <see cref="UIElement"/> that the presenter wants to be displayed inside a
+ /// <see cref="Microsoft.VisualStudio.Text.Editor.ITextView"/> popup.
+ /// </summary>
+ object SurfaceElement { get; }
+
+ /// <summary>
+ /// Occurs when the WPF SurfaceElement is changed.
+ /// </summary>
+ event EventHandler SurfaceElementChanged;
+
+ /// <summary>
+ /// Gets the <see cref="ITrackingSpan"/> to which this presenter is related.
+ /// </summary>
+ /// <remarks>
+ /// This property is used to determine where to
+ /// place the <see cref="Microsoft.VisualStudio.Text.Editor.ITextView"/> popup inside of which the presenter's
+ /// SurfaceElement is hosted.
+ /// </remarks>
+ ITrackingSpan PresentationSpan { get; }
+
+ /// <summary>
+ /// Occurs when the PresentationSpan property changes.
+ /// </summary>
+ /// <remarks>
+ /// This is the way popup presenters signal that they should be moved.
+ /// </remarks>
+ event EventHandler PresentationSpanChanged;
+
+ /// <summary>
+ /// Gets a set of flags that determine the popup style.
+ /// </summary>
+ PopupStyles PopupStyles { get; }
+
+ /// <summary>
+ /// Occurs when the PopupStyles property changes.
+ /// </summary>
+ event EventHandler<ValueChangedEventArgs<PopupStyles>> PopupStylesChanged;
+
+ /// <summary>
+ /// Gets the name of the space reservation manager that should be used to create popups for this presenter.
+ /// </summary>
+ /// <remarks>
+ /// Space reservation
+ /// managers can be ordered, thus ensuring predictable popup placement.
+ /// </remarks>
+ string SpaceReservationManagerName { get; }
+
+ /// <summary>
+ /// Gets or sets the opacity of this popup presenter.
+ /// </summary>
+ /// <remarks>
+ /// The presenter should use this property to set the
+ /// opacity of its surface element and of any other text-obscuring UI elements it has provided.
+ /// </remarks>
+ double Opacity { get; set; }
+ }
+}