private void DoLoadNameTable(ThreadMirror thread, VariableItem parent) { for (int i = 0; i < parent.NumberOfChildren; ++i) { VariableItem child = parent.GetChild(thread, i); string value = child.AttributedValue.ToString(); if (value.Length > 0) m_nameTable[child.AttributedName.ToString()] = value; var iv = child.Value as InstanceValue; if (iv != null) { for (int j = 0; j < iv.Length; ++j) { VariableItem gchild = iv.GetChild(thread, child, j); gchild.autorelease(); value = gchild.AttributedValue.ToString(); if (value.Length > 0) m_nameTable[gchild.AttributedName.ToString()] = value; } } var tv = child.Value as TypeValue; if (tv != null) { for (int j = 0; j < tv.Length; ++j) { VariableItem gchild = tv.GetChild(thread, child, j); gchild.autorelease(); value = gchild.AttributedValue.ToString(); if (value.Length > 0) m_nameTable[gchild.AttributedName.ToString()] = value; } } } }
public NSObject outlineView_child_ofItem(NSOutlineView table, int index, VariableItem item) { NSObject child = null; try { if (m_item != null) child = item == null ? m_item.GetChild(m_frame.Thread, index) : item.GetChild(m_frame.Thread, index); } catch (Exception e) { if (!Debugger.IsShuttingDown(e)) throw; } return child; }