protected override void Dispose(bool disposing) { try { if (disposing) { // Dispose the timers if (null != FileChangeTrigger) { FileChangeTrigger.Dispose(); FileChangeTrigger = null; } if (null != FNFStatusbarTrigger) { FNFStatusbarTrigger.Dispose(); FNFStatusbarTrigger = null; } SetFileChangeNotification(null, false); if (editorControl != null) { editorControl.Dispose(); editorControl = null; } if (FileChangeTrigger != null) { FileChangeTrigger.Dispose(); FileChangeTrigger = null; } if (extensibleObjectSite != null) { extensibleObjectSite.NotifyDelete(this); extensibleObjectSite = null; } GC.SuppressFinalize(this); } } finally { base.Dispose(disposing); } }
/// <summary> /// Initialization routine for the Editor. Loads the list of properties for the document /// which will show up in the properties window /// </summary> /// <param name="package"></param> private void PrivateInit(XSharpProjectPackage package) { myPackage = package; loading = false; gettingCheckoutStatus = false; trackSel = null; Control.CheckForIllegalCrossThreadCalls = false; // Create an ArrayList to store the objects that can be selected ArrayList listObjects = new ArrayList(); // Create the object that will show the document's properties // on the properties window. VOEditorProperties prop = new VOEditorProperties(this); listObjects.Add(prop); // Create the SelectionContainer object. selContainer = new Microsoft.VisualStudio.Shell.SelectionContainer(true, false); selContainer.SelectableObjects = listObjects; selContainer.SelectedObjects = listObjects; // Create and initialize the editor this.editorControl = new VOWEDControl(); this.editorControl.IsDirtyChanged = new EventHandler(IsDirtyChangedHandler); this.editorControl.TriggerSave = new EventHandler(TriggerSaveHandler); setupCommands(); this.editorControl.StatusBarMessage = new StatusBarMessageDelegate(StatusBarMessageHandler); }