Exemplo n.º 1
0
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (_trackDocumentsEventsCookie != 0)
                {
                    var serviceProvider = this.AsVsServiceProvider();
                    IVsTrackProjectDocuments2 trackDocuments = serviceProvider.GetTrackProjectDocuments2();
                    trackDocuments.UnadviseTrackProjectDocumentsEvents(_trackDocumentsEventsCookie);
                    _trackDocumentsEventsCookie = 0;
                }

                if (_grammarFileObjectExtenderCookie != 0)
                {
                    ObjectExtenders objectExtenders = (ObjectExtenders)GetService(typeof(ObjectExtenders));
                    objectExtenders.UnregisterExtenderProvider(_grammarFileObjectExtenderCookie);
                    _grammarFileObjectExtenderCookie = 0;
                }

                if (_languageInfo != null)
                {
                    _languageInfo.Dispose();
                    _languageInfo = null;
                }

                if (_languageInfo4 != null)
                {
                    _languageInfo4.Dispose();
                    _languageInfo4 = null;
                }
            }

            base.Dispose(disposing);
        }
Exemplo n.º 2
0
        protected override void Dispose(bool disposing)
        {
            // Unadvise solution listeners.
            try
            {
                if (disposing)
                {
                    // only decrement the reference count once, regardless of the number of times Dispose is called.
                    // Ignore if Initialize was never called.
                    if (_initialized && !_disposed && Interlocked.Decrement(ref _singleFileGeneratorNodeExtenderReferenceCount) == 0)
                    {
                        ObjectExtenders objectExtenders = (ObjectExtenders)GetService(typeof(ObjectExtenders));
                        objectExtenders.UnregisterExtenderProvider(_singleFileGeneratorNodeExtenderCookie);
                    }

                    foreach (SolutionListener solutionListener in this.solutionListeners)
                    {
                        solutionListener.Dispose();
                    }
                }
            }
            finally
            {
                _disposed = true;
                base.Dispose(disposing);
            }
        }
Exemplo n.º 3
0
 protected override void Dispose(bool disposing)
 {
     if (null != propertyExtender && 0 != extenderCookie)
     {
         propertyExtender.UnregisterExtenderProvider(extenderCookie);
     }
     base.Dispose(disposing);
 }
Exemplo n.º 4
0
 protected override void Dispose(bool disposing)
 {
     if (extensionMgr != null)
     {
         foreach (int cookie in extenderCookies)
         {
             extensionMgr.UnregisterExtenderProvider(cookie);
         }
     }
     base.Dispose(disposing);
 }