TreeIter InternalFillType(HeapSnapshot file, int type, out bool cancelled) { ReferenceNode node; cancelled = false; if (checkPurge.Active) { ProgressDialog dlg = new ProgressDialog((Gtk.Window) this.Toplevel, false); dlg.Show(); while (Gtk.Application.EventsPending()) { Gtk.Application.RunIteration(); } node = file.GetRootReferenceTree(dlg, type); cancelled = dlg.Cancelled; dlg.Destroy(); if (node == null) { return(TreeIter.Zero); } } else { node = file.GetReferenceTree(type, checkInverse.Active); } return(AddNode(TreeIter.Zero, node)); }
TreeIter InternalFillType(HeapSnapshot file, int type, out bool cancelled) { ReferenceNode node; cancelled = false; if (checkPurge.Active) { ProgressDialog dlg = new ProgressDialog ((Gtk.Window) this.Toplevel, false); dlg.Show (); while (Gtk.Application.EventsPending ()) Gtk.Application.RunIteration (); node = file.GetRootReferenceTree (dlg, type); cancelled = dlg.Cancelled; dlg.Destroy (); if (node == null) return TreeIter.Zero; } else node = file.GetReferenceTree (type, checkInverse.Active); return AddNode (TreeIter.Zero, node); }