protected override void Dispose(bool disposing) { if (!FDisposed) { if (disposing) { // Dispose managed resources. FSearchTextBox.ContextMenu.Popup -= FSearchTextBox_ContextMenu_Popup; FSearchTextBox.MouseWheel -= FSearchTextBox_MouseWheel; FHDEHost.WindowSelectionChanged -= HandleWindowSelectionChanged; FTagsPin.Changed -= HandleTagsPinChanged; // if (FSearchResult != null) // FSearchResult.Dispose(); ActivePatchNode = null; this.FSearchTextBox.TextChanged -= this.FSearchTextBoxTextChanged; // Shutdown viewer layer this.FHierarchyViewer.MouseDoubleClick -= this.FHierarchyViewerDoubleClick; this.FHierarchyViewer.MouseClick -= this.FHierarchyViewerClick; this.FHierarchyViewer.KeyPress -= this.FHierarchyViewerKeyPress; this.FHierarchyViewer.Dispose(); this.FHierarchyViewer = null; // Shutdown view layer FNodeView.Dispose(); } } FDisposed = true; }
private void RemoveNodeView(NodeView nodeView) { nodeView.Renamed -= HandleNodeViewRenamed; FChildNodes.Remove(nodeView); nodeView.Dispose(); }