internal TextViewWrapper(IVsContainedLanguageHost languageHost, IVsIntellisenseHost intellisenseHost, IVsTextBufferCoordinator coordinator, IOleCommandTarget nextTarget) { if (null == intellisenseHost) { throw new ArgumentNullException("buffer"); } this.intellisenseHost = intellisenseHost; this.bufferCoordinator = coordinator; this.languageHost = languageHost; this.nextTarget = nextTarget; }
public int SetHost(IVsContainedLanguageHost host) { if (ContainedDocument.ContainedLanguageHost == host) { return(VSConstants.S_OK); } ContainedDocument.ContainedLanguageHost = host; // Are we going away due to the contained language being disconnected? if (host == null) { OnDisconnect(); } return(VSConstants.S_OK); }
private void InitContainedLanguage() { IVsTextLines vsTextLines = EnsureBufferCoordinator(); IVsContainedLanguage vsContainedLanguage; languageFactory.GetLanguage(hierarchy, MarkdownCodeProject.FileItemId, _textBufferCoordinator, out vsContainedLanguage); if (vsContainedLanguage == null) { Logger.Log("Markdown: Couldn't get IVsContainedLanguage for " + ProjectionBuffer.IProjectionBuffer.ContentType); return; } Guid langService; vsContainedLanguage.GetLanguageServiceID(out langService); vsTextLines.SetLanguageServiceID(ref langService); containedLanguage = vsContainedLanguage; IVsContainedLanguageHost legacyContainedLanguageHost = GetLegacyContainedLanguageHost(); vsContainedLanguage.SetHost(legacyContainedLanguageHost); _legacyCommandTarget = new LegacyContainedLanguageCommandTarget(); IVsTextViewFilter textViewFilter; _legacyCommandTarget.Create(owner.Document, vsContainedLanguage, _textBufferCoordinator, ProjectionBuffer, out textViewFilter); IWebContainedLanguageHost webContainedLanguageHost = legacyContainedLanguageHost as IWebContainedLanguageHost; webContainedLanguageHost.SetContainedCommandTarget(_legacyCommandTarget.TextView, _legacyCommandTarget.ContainedLanguageTarget); containedLanguage2 = (webContainedLanguageHost as IContainedLanguageHostVs); containedLanguage2.TextViewFilter = textViewFilter; ProjectionBuffer.ResetMappings(); WebEditor.TraceEvent(1005); }
public int SetHost(IVsContainedLanguageHost pHost) { languageHost = pHost; return VSConstants.S_OK; }
public int SetHost(IVsContainedLanguageHost pHost) { languageHost = pHost; return(VSConstants.S_OK); }
public AbstractContainedLanguage(IVsContainedLanguageHost host) { ContainedLanguageHost = host; }
public IVsContainedLanguageHost GetLegacyContainedLanguageHost() { if (_containedLanguageHost == null) _containedLanguageHost = new VsLegacyContainedLanguageHost(owner.Document, ProjectionBuffer, hierarchy); return _containedLanguageHost; }
public void Dispose() { if (_legacyCommandTarget != null && _legacyCommandTarget.TextView != null) containedLanguage2.RemoveContainedCommandTarget(_legacyCommandTarget.TextView); containedLanguage2.ContainedLanguageDebugInfo = null; containedLanguage2.TextViewFilter = null; if (_legacyCommandTarget != null) { _legacyCommandTarget.Dispose(); _legacyCommandTarget = null; } containedLanguage.SetHost(null); _textBufferCoordinator = null; _containedLanguageHost = null; if (_secondaryBuffer != null) { ((_secondaryBuffer as IVsPersistDocData)).Close(); _secondaryBuffer = null; } if (Disposing != null) Disposing(this, EventArgs.Empty); }
public int CloseView() { this.intellisenseHost = null; this.bufferCoordinator = null; this.languageHost = null; return VSConstants.S_OK; }