/// <summary>
/// Build up the Tree for the current piece of Cyberware and all of its children.
/// </summary>
/// <param name="objCyberware">Cyberware to iterate through.</param>
/// <param name="objParentNode">TreeNode to append to.</param>
/// <param name="objMenu">ContextMenuStrip that the new Cyberware TreeNodes should use.</param>
/// <param name="objGearMenu">ContextMenuStrip that the new Gear TreeNodes should use.</param>
public void BuildCyberwareTree(Cyberware objCyberware, TreeNode objParentNode, ContextMenuStrip objMenu, ContextMenuStrip objGearMenu)
{
TreeNode objNode = new TreeNode();
objNode.Text = objCyberware.DisplayName;
objNode.Tag = objCyberware.InternalId;
if (objCyberware.Notes != string.Empty)
objNode.ForeColor = Color.SaddleBrown;
objNode.ToolTipText = objCyberware.Notes;
objNode.ContextMenuStrip = objMenu;
objParentNode.Nodes.Add(objNode);
objParentNode.Expand();
foreach (Cyberware objChild in objCyberware.Children)
BuildCyberwareTree(objChild, objNode, objMenu, objGearMenu);
foreach (Gear objGear in objCyberware.Gear)
{
TreeNode objGearNode = new TreeNode();
objGearNode.Text = objGear.DisplayName;
objGearNode.Tag = objGear.InternalId;
if (objGear.Notes != string.Empty)
objGearNode.ForeColor = Color.SaddleBrown;
objGearNode.ToolTipText = objGear.Notes;
objGearNode.ContextMenuStrip = objGearMenu;
BuildGearTree(objGear, objGearNode, objGearMenu);
objNode.Nodes.Add(objGearNode);
objNode.Expand();
}
}