public IIntellisenseController TryCreateIntellisenseController(ITextView textView, IList <ITextBuffer> subjectBuffers) { IntellisenseController controller; if (!textView.Properties.TryGetProperty <IntellisenseController>(typeof(IntellisenseController), out controller)) { controller = new IntellisenseController(this, textView, _ServiceProvider); } var analyzer = textView.GetAnalyzer(_ServiceProvider); if (analyzer != null) { var buffer = subjectBuffers[0]; foreach (var subjBuf in subjectBuffers) { controller.PropagateAnalyzer(subjBuf); } var entry = analyzer.MonitorTextBuffer(textView, buffer); _hookedCloseEvents[textView] = Tuple.Create(entry.BufferParser, analyzer); textView.Closed += TextView_Closed; for (int i = 1; i < subjectBuffers.Count; i++) { entry.BufferParser.AddBuffer(subjectBuffers[i]); } controller.SetBufferParser(entry.BufferParser); } return(controller); }
public IIntellisenseController TryCreateIntellisenseController(ITextView textView, IList <ITextBuffer> subjectBuffers) { if (textView.Roles.Contains("DEBUGVIEW")) { // TODO: Determine the context for this view and attach to the correct analyzer return(null); } if (textView.TextBuffer.ContentType.IsOfType(CodeRemoteContentDefinition.CodeRemoteContentTypeName)) { // We want default handling when this is a remote buffer return(null); } if (Services.Python.LanguageServerOptions.ServerDisabled) { return(null); } IntellisenseController controller; if (!textView.Properties.TryGetProperty(typeof(IntellisenseController), out controller)) { controller = new IntellisenseController(this, textView); } foreach (var subjectBuffer in subjectBuffers) { controller.ConnectSubjectBuffer(subjectBuffer); } return(controller); }
public IIntellisenseController TryCreateIntellisenseController(ITextView textView, IList<ITextBuffer> subjectBuffers) { IntellisenseController controller; if (!textView.Properties.TryGetProperty<IntellisenseController>(typeof(IntellisenseController), out controller)) { controller = new IntellisenseController(this, textView, _ServiceProvider); } var analyzer = textView.GetAnalyzer(_ServiceProvider); if (analyzer != null) { var buffer = subjectBuffers[0]; foreach (var subjBuf in subjectBuffers) { controller.PropagateAnalyzer(subjBuf); } var entry = analyzer.MonitorTextBuffer(textView, buffer); _hookedCloseEvents[textView] = Tuple.Create(entry.BufferParser, analyzer); textView.Closed += TextView_Closed; for (int i = 1; i < subjectBuffers.Count; i++) { entry.BufferParser.AddBuffer(subjectBuffers[i]); } controller.SetBufferParser(entry.BufferParser); } return controller; }
public IIntellisenseController TryCreateIntellisenseController(ITextView textView, IList<ITextBuffer> subjectBuffers) { IntellisenseController controller; if (!textView.Properties.TryGetProperty(typeof(IntellisenseController), out controller)) { controller = new IntellisenseController(this, textView, _ServiceProvider); } foreach (var subjectBuffer in subjectBuffers) { controller.ConnectSubjectBuffer(subjectBuffer); } return controller; }
public IIntellisenseController TryCreateIntellisenseController(ITextView textView, IList <ITextBuffer> subjectBuffers) { IntellisenseController controller; if (!textView.Properties.TryGetProperty <IntellisenseController>(typeof(IntellisenseController), out controller)) { controller = new IntellisenseController(this, textView, _ServiceProvider); } foreach (var subjectBuffer in subjectBuffers) { controller.ConnectSubjectBuffer(subjectBuffer); } return(controller); }
internal static IntellisenseController GetOrCreateController( IServiceProvider serviceProvider, IComponentModel model, ITextView textView ) { IntellisenseController controller; if (!textView.Properties.TryGetProperty <IntellisenseController>(typeof(IntellisenseController), out controller)) { var intellisenseControllerProvider = ( from export in model.DefaultExportProvider.GetExports <IIntellisenseControllerProvider, IContentTypeMetadata>() from exportedContentType in export.Metadata.ContentTypes where exportedContentType == PythonCoreConstants.ContentType && export.Value.GetType() == typeof(IntellisenseControllerProvider) select export.Value ).First(); controller = new IntellisenseController((IntellisenseControllerProvider)intellisenseControllerProvider, textView, serviceProvider); } return(controller); }
public IIntellisenseController TryCreateIntellisenseController(ITextView textView, IList <ITextBuffer> subjectBuffers) { if (textView.Roles.Contains("DEBUGVIEW")) { // TODO: Determine the context for this view and attach to the correct analyzer return(null); } IntellisenseController controller; if (!textView.Properties.TryGetProperty(typeof(IntellisenseController), out controller)) { controller = new IntellisenseController(this, textView); } foreach (var subjectBuffer in subjectBuffers) { controller.ConnectSubjectBuffer(subjectBuffer); } return(controller); }
internal static IntellisenseController GetOrCreateController( IServiceProvider serviceProvider, IComponentModel model, ITextView textView ) { IntellisenseController controller; if (!textView.Properties.TryGetProperty<IntellisenseController>(typeof(IntellisenseController), out controller)) { var intellisenseControllerProvider = ( from export in model.DefaultExportProvider.GetExports<IIntellisenseControllerProvider, IContentTypeMetadata>() from exportedContentType in export.Metadata.ContentTypes where exportedContentType == PythonCoreConstants.ContentType && export.Value.GetType() == typeof(IntellisenseControllerProvider) select export.Value ).First(); controller = new IntellisenseController((IntellisenseControllerProvider)intellisenseControllerProvider, textView, serviceProvider); } return controller; }