private TreeNode LoadTemplateRuleNode(TreeNode parent, object tag, string text)
{
// if existing, then return
foreach (TreeNode tnExist in parent.Nodes)
{
if (tnExist.Tag == tag)
return tnExist;
}
TreeNode tn = new TreeNode();
tn.Tag = tag;
tn.Text = text;
if (tag is DocModelRuleEntity)
{
tn.ImageIndex = 0;
}
else if (tag is DocModelRuleAttribute)
{
tn.ImageIndex = 1;
}
else if (tag is DocModelRuleConstraint)
{
tn.ImageIndex = 2;
}
else if (tag is DocTemplateDefinition)
{
tn.ImageIndex = 3;
}
tn.SelectedImageIndex = tn.ImageIndex;
parent.Nodes.Add(tn);
return tn;
}