• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C# IInteractiveWindow类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中IInteractiveWindow的典型用法代码示例。如果您正苦于以下问题:C# IInteractiveWindow类的具体用法?C# IInteractiveWindow怎么用?C# IInteractiveWindow使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



IInteractiveWindow类属于命名空间,在下文中一共展示了IInteractiveWindow类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: VsInteractiveWindowCommandFilter

        public VsInteractiveWindowCommandFilter(IVsEditorAdaptersFactoryService adapterFactory, IInteractiveWindow window, IVsTextView textViewAdapter, IVsTextBuffer bufferAdapter, IEnumerable<Lazy<IVsInteractiveWindowOleCommandTargetProvider, ContentTypeMetadata>> oleCommandTargetProviders, IContentTypeRegistryService contentTypeRegistry)
        {
            _window = window;
            _oleCommandTargetProviders = oleCommandTargetProviders;
            _contentTypeRegistry = contentTypeRegistry;

            this.textViewAdapter = textViewAdapter;

            // make us a code window so we'll have the same colors as a normal code window.
            IVsTextEditorPropertyContainer propContainer;
            ErrorHandler.ThrowOnFailure(((IVsTextEditorPropertyCategoryContainer)textViewAdapter).GetPropertyCategory(Microsoft.VisualStudio.Editor.DefGuidList.guidEditPropCategoryViewMasterSettings, out propContainer));
            propContainer.SetProperty(VSEDITPROPID.VSEDITPROPID_ViewComposite_AllCodeWindowDefaults, true);
            propContainer.SetProperty(VSEDITPROPID.VSEDITPROPID_ViewGlobalOpt_AutoScrollCaretOnTextEntry, true);

            // editor services are initialized in textViewAdapter.Initialize - hook underneath them:
            _preEditorCommandFilter = new CommandFilter(this, CommandFilterLayer.PreEditor);
            ErrorHandler.ThrowOnFailure(textViewAdapter.AddCommandFilter(_preEditorCommandFilter, out _editorCommandFilter));

            textViewAdapter.Initialize(
                (IVsTextLines)bufferAdapter,
                IntPtr.Zero,
                (uint)TextViewInitFlags.VIF_HSCROLL | (uint)TextViewInitFlags.VIF_VSCROLL | (uint)TextViewInitFlags3.VIF_NO_HWND_SUPPORT,
                new[] { new INITVIEW { fSelectionMargin = 0, fWidgetMargin = 0, fVirtualSpace = 0, fDragDropMove = 1 } });

            // disable change tracking because everything will be changed
            var textViewHost = adapterFactory.GetWpfTextViewHost(textViewAdapter);

            _preLanguageCommandFilter = new CommandFilter(this, CommandFilterLayer.PreLanguage);
            ErrorHandler.ThrowOnFailure(textViewAdapter.AddCommandFilter(_preLanguageCommandFilter, out _editorServicesCommandFilter));

            _textViewHost = textViewHost;
        }
开发者ID:ralfkang,项目名称:roslyn,代码行数:32,代码来源:VsInteractiveWindowCommandFilter.cs


示例2:

        IWpfTextView IInteractiveWindowEditorFactoryService.CreateTextView(IInteractiveWindow window, ITextBuffer buffer, ITextViewRoleSet roles)
        {
            WpfTestCase.RequireWpfFact($"Creates an IWpfTextView in {nameof(InteractiveWindowEditorsFactoryService)}");

            var textView = _textEditorFactoryService.CreateTextView(buffer, roles);
            return _textEditorFactoryService.CreateTextViewHost(textView, false).TextView;
        }
开发者ID:CAPCHIK,项目名称:roslyn,代码行数:7,代码来源:InteractiveWindowEditorsFactoryService.cs


示例3: ParseArguments

        private bool ParseArguments(IInteractiveWindow window, string arguments, out string commandName, out IInteractiveWindowCommand command)
        {
            string name = arguments.Split(s_whitespaceChars)[0];

            if (name.Length == 0)
            {
                command = null;
                commandName = null;
                return true;
            }

            var commands = window.GetInteractiveCommands();
            string prefix = commands.CommandPrefix;

            // display help on a particular command:
            command = commands[name];

            if (command == null && name.StartsWith(prefix, StringComparison.Ordinal))
            {
                name = name.Substring(prefix.Length);
                command = commands[name];
            }

            commandName = name;
            return command != null;
        }
开发者ID:GloryChou,项目名称:roslyn,代码行数:26,代码来源:HelpCommand.cs


示例4: Execute

        public Task<ExecutionResult> Execute(IInteractiveWindow window, string arguments)
        {
            var engine = window.Evaluator as InteractiveEvaluator;
            if (engine != null)
            {
                int i = 0;
                string path;

                if (!CommandArgumentsParser.ParsePath(arguments, ref i, out path) || path == null)
                {
                    ReportInvalidArguments(window);
                    return ExecutionResult.Failed;
                }

                if (!CommandArgumentsParser.ParseTrailingTrivia(arguments, ref i))
                {
                    window.ErrorOutputWriter.WriteLine(string.Format(EditorFeaturesResources.UnexpectedText, arguments.Substring(i)));
                    return ExecutionResult.Failed;
                }

                return engine.LoadCommandAsync(path);
            }

            return ExecutionResult.Failed;
        }
开发者ID:ninjeff,项目名称:roslyn,代码行数:25,代码来源:LoadCommand.cs


示例5: Execute

 public Task<ExecutionResult> Execute(IInteractiveWindow window, string arguments) {
     var eval = window.Evaluator as PythonDebugReplEvaluator;
     if (eval != null) {
         eval.StepInto();
     }
     return ExecutionResult.Succeeded;
 }
开发者ID:KaushikCh,项目名称:PTVS,代码行数:7,代码来源:DebugReplStepIntoCommand.cs


示例6: Execute

        internal Task Execute(IInteractiveWindow interactiveWindow, string title)
        {
            ImmutableArray<string> references, referenceSearchPaths, sourceSearchPaths, namespacesToImport;
            string projectDirectory;

            if (GetProjectProperties(out references, out referenceSearchPaths, out sourceSearchPaths, out namespacesToImport, out projectDirectory))
            {
                // Now, we're going to do a bunch of async operations.  So create a wait
                // indicator so the user knows something is happening, and also so they cancel.
                var waitIndicator = GetWaitIndicator();
                var waitContext = waitIndicator.StartWait(title, InteractiveEditorFeaturesResources.BuildingProject, allowCancel: true);

                var resetInteractiveTask = ResetInteractiveAsync(
                    interactiveWindow,
                    references,
                    referenceSearchPaths,
                    sourceSearchPaths,
                    namespacesToImport,
                    projectDirectory,
                    waitContext);

                // Once we're done resetting, dismiss the wait indicator and focus the REPL window.
                return resetInteractiveTask.SafeContinueWith(
                    _ =>
                    {
                        waitContext.Dispose();
                        ExecutionCompleted?.Invoke(this, new EventArgs());
                    },
                    TaskScheduler.FromCurrentSynchronizationContext());
            }

            return Task.CompletedTask;
        }
开发者ID:MischkowskyM,项目名称:roslyn,代码行数:33,代码来源:ResetInteractive.cs


示例7: Execute

 public Task<ExecutionResult> Execute(IInteractiveWindow window, string arguments) {
     var eval = window.GetPythonDebugReplEvaluator();
     if (eval != null) {
         eval.DisplayProcesses();
     }
     return ExecutionResult.Succeeded;
 }
开发者ID:jsschultz,项目名称:PTVS,代码行数:7,代码来源:DebugReplProcessesCommand.cs


示例8:

        ITextBuffer IInteractiveWindowEditorFactoryService.CreateAndActivateBuffer(IInteractiveWindow window) {
            IContentType contentType;
            if (!window.Properties.TryGetProperty(typeof(IContentType), out contentType)) {
                contentType = _contentTypeRegistry.GetContentType(ContentType);
            }

            return _textBufferFactoryService.CreateTextBuffer(contentType);
        }
开发者ID:AlexanderSher,项目名称:RTVS-Old,代码行数:8,代码来源:TestInteractiveWindowEditorsFactoryService.cs


示例9: Execute

 public Task<ExecutionResult> Execute(IInteractiveWindow window, string arguments) {
     var remoteEval = window.Evaluator as IMultipleScopeEvaluator;
     Debug.Assert(remoteEval != null, "Evaluator does not support switching scope");
     if (remoteEval != null) {
         remoteEval.SetScope(arguments);
     }
     return ExecutionResult.Succeeded;
 }
开发者ID:jsschultz,项目名称:PTVS,代码行数:8,代码来源:SwitchModuleCommand.cs


示例10: TestInteractiveCommandHandler

 public TestInteractiveCommandHandler(
     IInteractiveWindow interactiveWindow,
     IContentTypeRegistryService contentTypeRegistryService,
     IEditorOptionsFactoryService editorOptionsFactoryService,
     IEditorOperationsFactoryService editorOperationsFactoryService)
     : base(contentTypeRegistryService, editorOptionsFactoryService, editorOperationsFactoryService)
 {
     _interactiveWindow = interactiveWindow;
 }
开发者ID:MischkowskyM,项目名称:roslyn,代码行数:9,代码来源:TestInteractiveCommandHandler.cs


示例11: GetTextViewHost

 public IWpfTextViewHost GetTextViewHost(IInteractiveWindow window)
 {
     var cmdFilter = GetCommandFilter(window);
     if (cmdFilter != null)
     {
         return cmdFilter.TextViewHost;
     }
     return null;
 }
开发者ID:elemk0vv,项目名称:roslyn-1,代码行数:9,代码来源:VsInteractiveWindowEditorFactoryService.cs


示例12: RInteractiveWindowVisualComponent

        public RInteractiveWindowVisualComponent(IInteractiveWindow interactiveWindow, IVisualComponentContainer<IInteractiveWindowVisualComponent> container) {
            InteractiveWindow = interactiveWindow;
            Container = container;

            var textView = interactiveWindow.TextView;
            Controller = ServiceManagerBase.GetService<ICommandTarget>(textView);
            Control = textView.VisualElement;
            interactiveWindow.Properties.AddProperty(typeof(IInteractiveWindowVisualComponent), this);
        }
开发者ID:AlexanderSher,项目名称:RTVS-Old,代码行数:9,代码来源:RInteractiveWindowVisualComponent.cs


示例13: MockInteractiveWindowCommands

 public MockInteractiveWindowCommands(
     IInteractiveWindow window,
     string prefix,
     IEnumerable<IInteractiveWindowCommand> commands
 ) {
     CommandPrefix = prefix;
     _window = window;
     _commands = commands.ToList();
 }
开发者ID:KaushikCh,项目名称:PTVS,代码行数:9,代码来源:MockInteractiveWindowCommandsFactory.cs


示例14: RSessionCallback

        public RSessionCallback(IInteractiveWindow interactiveWindow, IRSession session, IRSettings settings, ICoreShell coreShell, IFileSystem fileSystem) {
            _interactiveWindow = interactiveWindow;
            _session = session;
            _settings = settings;
            _coreShell = coreShell;
            _fileSystem = fileSystem;

            var workflowProvider = _coreShell.ExportProvider.GetExportedValue<IRInteractiveWorkflowProvider>();
            _workflow = workflowProvider.GetOrCreate();
        }
开发者ID:Microsoft,项目名称:RTVS,代码行数:10,代码来源:RSessionCallback.cs


示例15: ResetInteractiveAsync

        private async Task ResetInteractiveAsync(
            IInteractiveWindow interactiveWindow,
            ImmutableArray<string> referencePaths,
            ImmutableArray<string> referenceSearchPaths,
            ImmutableArray<string> sourceSearchPaths,
            ImmutableArray<string> projectNamespaces,
            string projectDirectory,
            IWaitContext waitContext)
        {
            // First, open the repl window.
            IInteractiveEvaluator evaluator = interactiveWindow.Evaluator;

            // If the user hits the cancel button on the wait indicator, then we want to stop the
            // build.
            using (waitContext.CancellationToken.Register(() =>
                CancelBuildProject(), useSynchronizationContext: true))
            {
                // First, start a build.
                // If the build fails do not reset the REPL.
                var builtSuccessfully = await BuildProject().ConfigureAwait(true);
                if (!builtSuccessfully)
                {
                    return;
                }
            }

            // Then reset the REPL
            waitContext.Message = InteractiveEditorFeaturesResources.Resetting_Interactive;
            await interactiveWindow.Operations.ResetAsync(initialize: true).ConfigureAwait(true);

            // TODO: load context from an rsp file.

            // Now send the reference paths we've collected to the repl.
            // The SetPathsAsync method is not available through an Interface.
            // Execute the method only if the cast to a concrete InteractiveEvaluator succeeds.
            InteractiveEvaluator interactiveEvaluator = evaluator as InteractiveEvaluator;
            if (interactiveEvaluator != null)
            {
                await interactiveEvaluator.SetPathsAsync(referenceSearchPaths, sourceSearchPaths, projectDirectory).ConfigureAwait(true);
            }

            var editorOptions = _editorOptionsFactoryService.GetOptions(interactiveWindow.CurrentLanguageBuffer);
            var importReferencesCommand = referencePaths.Select(_createReference);
            await interactiveWindow.SubmitAsync(importReferencesCommand).ConfigureAwait(true);

            // Project's default namespace might be different from namespace used within project.
            // Filter out namespace imports that do not exist in interactive compilation.
            IEnumerable<string> namespacesToImport = await GetNamespacesToImportAsync(projectNamespaces, interactiveWindow).ConfigureAwait(true);
            var importNamespacesCommand = namespacesToImport.Select(_createImport).Join(editorOptions.GetNewLineCharacter());

            if (!string.IsNullOrWhiteSpace(importNamespacesCommand))
            {
                await interactiveWindow.SubmitAsync(new[] { importNamespacesCommand }).ConfigureAwait(true);
            }
        }
开发者ID:Rickinio,项目名称:roslyn,代码行数:55,代码来源:ResetInteractive.cs


示例16: TestInteractiveCommandHandler

 public TestInteractiveCommandHandler(
     IInteractiveWindow interactiveWindow,
     IContentTypeRegistryService contentTypeRegistryService,
     IEditorOptionsFactoryService editorOptionsFactoryService,
     IEditorOperationsFactoryService editorOperationsFactoryService,
     IWaitIndicator waitIndicator)
     : base(contentTypeRegistryService, editorOptionsFactoryService, editorOperationsFactoryService, waitIndicator)
 {
     _interactiveWindow = interactiveWindow;
     _sendToInteractiveSubmissionProvider = new CSharpSendToInteractiveSubmissionProvider();
 }
开发者ID:Rickinio,项目名称:roslyn,代码行数:11,代码来源:TestInteractiveCommandHandler.cs


示例17: Execute

        public Task<ExecutionResult> Execute(IInteractiveWindow window, string arguments)
        {
            bool initialize;
            if (!TryParseArguments(arguments, out initialize))
            {
                ReportInvalidArguments(window);
                return ExecutionResult.Failed;
            }

            return window.Operations.ResetAsync(initialize);
        }
开发者ID:Rickinio,项目名称:roslyn,代码行数:11,代码来源:CSharpVBResetCommand.cs


示例18: InteractiveWindowTestHost

        internal InteractiveWindowTestHost()
        {
            _exportProvider = new CompositionContainer(
                s_lazyCatalog.Value,
                CompositionOptions.DisableSilentRejection | CompositionOptions.IsThreadSafe);

            var contentTypeRegistryService = _exportProvider.GetExport<IContentTypeRegistryService>().Value;
            Evaluator = new TestInteractiveEvaluator();
            Window = _exportProvider.GetExport<IInteractiveWindowFactoryService>().Value.CreateWindow(Evaluator);
            Window.InitializeAsync().Wait();
        }
开发者ID:XieShuquan,项目名称:roslyn,代码行数:11,代码来源:InteractiveWindowTestHost.cs


示例19: Execute

        public override Task<ExecutionResult> Execute(IInteractiveWindow window, string arguments)
        {
            int noConfigStart, noConfigEnd;
            if (!TryParseArguments(arguments, out noConfigStart, out noConfigEnd))
            {
                ReportInvalidArguments(window);
                return ExecutionResult.Failed;
            }

            return ((InteractiveWindow)window).ResetAsync(initialize: noConfigStart > -1);
        }
开发者ID:REALTOBIZ,项目名称:roslyn,代码行数:11,代码来源:ResetCommand.cs


示例20: CreateInteractiveCommands

 public IInteractiveWindowCommands CreateInteractiveCommands(
     IInteractiveWindow window,
     string prefix,
     IEnumerable<IInteractiveWindowCommand> commands
 ) {
     return window.Properties.GetOrCreateSingletonProperty(() => new MockInteractiveWindowCommands(
         window,
         prefix,
         commands
     ));
 }
开发者ID:KaushikCh,项目名称:PTVS,代码行数:11,代码来源:MockInteractiveWindowCommandsFactory.cs



注:本文中的IInteractiveWindow类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# IInterceptedFakeObjectCall类代码示例发布时间:2022-05-24
下一篇:
C# IIntegrationResult类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap