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
path: root/src
diff options
context:
space:
mode:
authorKirill Osenkov <github@osenkov.com>2018-02-07 00:36:30 +0300
committerKirill Osenkov <github@osenkov.com>2018-02-07 00:36:30 +0300
commit6a67d2fcbcfce20f6cbf00eb949b043f05b506cf (patch)
tree64effc3f02ce7d2a3cf64c39dc578f506f416513 /src
parent62551e6a692a2cb804f943942bcd11285948ba6a (diff)
Include BraceCompletionManagerFactory
Make IBraceCompletionAdornmentService and IBraceCompletionAdornmentServiceFactory public.
Diffstat (limited to 'src')
-rw-r--r--src/Text/Impl/BraceCompletion/BraceCompletionManagerFactory.cs45
-rw-r--r--src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentService.cs2
-rw-r--r--src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentServiceFactory.cs2
3 files changed, 47 insertions, 2 deletions
diff --git a/src/Text/Impl/BraceCompletion/BraceCompletionManagerFactory.cs b/src/Text/Impl/BraceCompletion/BraceCompletionManagerFactory.cs
new file mode 100644
index 0000000..e1a7acf
--- /dev/null
+++ b/src/Text/Impl/BraceCompletion/BraceCompletionManagerFactory.cs
@@ -0,0 +1,45 @@
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for license information.
+//
+// This file contain implementations details that are subject to change without notice.
+// Use at your own risk.
+//
+namespace Microsoft.VisualStudio.Text.BraceCompletion.Implementation
+{
+ using Microsoft.VisualStudio.Text.Editor;
+ using Microsoft.VisualStudio.Text.Utilities;
+ using Microsoft.VisualStudio.Utilities;
+ using System.ComponentModel.Composition;
+
+ [Export(typeof(ITextViewCreationListener))]
+ [ContentType("text")]
+ [TextViewRole(PredefinedTextViewRoles.Editable)]
+ [PartCreationPolicy(CreationPolicy.Shared)]
+ internal sealed class BraceCompletionManagerFactory : ITextViewCreationListener
+ {
+ #region Imports
+
+ [Import]
+ private IBraceCompletionAdornmentServiceFactory _adornmentServiceFactory;
+
+ [Import]
+ private IBraceCompletionAggregatorFactory _aggregatorFactory;
+
+ [Import]
+ private GuardedOperations _guardedOperations;
+
+ #endregion
+
+ #region ITextViewCreationListener
+
+ public void TextViewCreated(ITextView textView)
+ {
+ textView.Properties.AddProperty("BraceCompletionManager",
+ new BraceCompletionManager(textView,
+ new BraceCompletionStack(textView, _adornmentServiceFactory, _guardedOperations), _aggregatorFactory, _guardedOperations));
+ }
+
+ #endregion
+ }
+}
diff --git a/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentService.cs b/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentService.cs
index dbbbe4f..5ae3b12 100644
--- a/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentService.cs
+++ b/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentService.cs
@@ -9,7 +9,7 @@ namespace Microsoft.VisualStudio.Text.BraceCompletion.Implementation
{
using System;
- internal interface IBraceCompletionAdornmentService
+ public interface IBraceCompletionAdornmentService
{
/// <summary>
/// Gets or sets the tracking point used by the brace completion adornment
diff --git a/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentServiceFactory.cs b/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentServiceFactory.cs
index 2bc8f4f..2e0d9f3 100644
--- a/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentServiceFactory.cs
+++ b/src/Text/Impl/BraceCompletion/IBraceCompletionAdornmentServiceFactory.cs
@@ -9,7 +9,7 @@ namespace Microsoft.VisualStudio.Text.BraceCompletion.Implementation
{
using Microsoft.VisualStudio.Text.Editor;
- internal interface IBraceCompletionAdornmentServiceFactory
+ public interface IBraceCompletionAdornmentServiceFactory
{
/// <summary>
/// Creates an IBraceCompletionAdornmentService for the given text view.