void IDisposable.Dispose() { if (this._serviceProvider != null) { IPreferencesService service = (IPreferencesService) this._serviceProvider.GetService(typeof(IPreferencesService)); if (service != null) { PreferencesStore preferencesStore = service.GetPreferencesStore(typeof(WebPackage)); preferencesStore.SetValue(WebDefaultViewPreference, (int) this._webDefaultView, (int) WebDefaultViewDefault); preferencesStore.SetValue(DesignViewModePreference, this._designModeEnabled, DesignViewModeDefault); } ((IServiceContainer) this._serviceProvider.GetService(typeof(IServiceContainer))).RemoveService(typeof(IWebDocumentRunService)); if (this._webDocumentRunService != null) { ((IDisposable) this._webDocumentRunService).Dispose(); this._webDocumentRunService = null; } } this._serviceProvider = null; }
private object OnCreateService(IServiceContainer serviceContainer, Type type) { if ((this._serviceProvider == null) || (type != typeof(IWebDocumentRunService))) { return null; } if (this._webDocumentRunService == null) { this._webDocumentRunService = new WebDocumentRunService(serviceContainer); } return this._webDocumentRunService; }