public void OnClearMark() { markedObjectNode = null; markedAllocationNode = null; markIsForComparison = false; markIsForFiltering = false; }
public void OnMarkAllocationSetForFiltering() { markedObjectNode = null; markedAllocationNode = CurrentSelection as HeapExplorerTreeModel.Node <AllocatedObject>; markIsForComparison = false; markIsForFiltering = true; }
public void OnFilterByIsReferencedByObjectInSet <HI> () where HI : IHeapItem { HeapExplorerTreeModel.Node <HI> itemNode = CurrentSelection as HeapExplorerTreeModel.Node <HI>; if ((itemNode != null) && (markedObjectNode != null)) { itemNode.SelectObjectsReferencedByItem(markedObjectNode); OnClearMark(); } }
public void OnFilterByIsReferencedByObjectOfClass() { HeapExplorerTreeModel.Node <HeapObject> node = CurrentSelection as HeapExplorerTreeModel.Node <HeapObject>; if (node != null) { LoadedClass c = LoadedClassChooser.ChooseClass(node.Root.Items.ClassStatistics); if (c != null) { IHeapObjectFilter filter = new HeapObjectIsReferencedByObjectOfClass(c); node.Filter(filter); } } }
public void OnFilterByClass <HI> () where HI : IHeapItem { HeapExplorerTreeModel.Node <HI> node = CurrentSelection as HeapExplorerTreeModel.Node <HI>; if (node != null) { LoadedClass c = LoadedClassChooser.ChooseClass(CurrentSelection.Items.ClassStatistics); if (c != null) { HeapItemIsOfClass <HI> filter = new HeapItemIsOfClass <HI> (c); node.Filter(filter); } } }
public void OnIntersectWithSet <HI> () where HI : IHeapItem { HeapExplorerTreeModel.Node <HI> node = CurrentSelection as HeapExplorerTreeModel.Node <HI>; if (node != null) { if (markedObjectNode != null) { markedObjectNode.IntersectWithNode(node); } else if (markedAllocationNode != null) { markedAllocationNode.IntersectWithNode(node); } OnClearMark(); } }
protected void FilterCurrentSet <HI> (IHeapItemFilter <HI> filter) where HI : IHeapItem { HeapExplorerTreeModel.Node <HI> node = (HeapExplorerTreeModel.Node <HI>)Explorer.CurrentSelection; node.Filter(filter); }