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;
 }
Exemple #2
0
        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;
 }
Exemple #5
0
 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;
 }