fixed listing of types

This commit is contained in:
John Jenko 2010-06-10 17:23:45 +00:00
parent eb1cd31e09
commit d69c2806f7
2 changed files with 1216 additions and 1075 deletions

File diff suppressed because it is too large Load Diff

View File

@ -143,6 +143,19 @@ namespace Volian.Controls.Library
}
}
private DevComponents.AdvTree.Node NewAdvTreeNode(string nodetext, bool selectable, bool chxbxvisable)
{
DevComponents.AdvTree.Node newnode;
newnode = new DevComponents.AdvTree.Node();
newnode.Text = nodetext;
newnode.Selectable = selectable;
newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
newnode.CheckBoxThreeState = false;
newnode.CheckBoxVisible = chxbxvisable;
return newnode;
}
public void advTreeStepTypesFillIn()
{
DevComponents.AdvTree.Node topnode = new DevComponents.AdvTree.Node();
@ -158,48 +171,69 @@ namespace Volian.Controls.Library
DevComponents.AdvTree.Node newnode;
advTreeStepTypes.Nodes.Clear();
// Add a dummy node for searching Accessory Sections (MS Word sections)
newnode = new DevComponents.AdvTree.Node();
newnode.Text = "Accessory Sections";
newnode.Selectable = true;
newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
newnode.CheckBoxThreeState = false;
newnode.CheckBoxVisible = true;
//newnode = new DevComponents.AdvTree.Node();
//newnode.Text = "Accessory Sections";
//newnode.Selectable = true;
//newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
//newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
//newnode.CheckBoxThreeState = false;
//newnode.CheckBoxVisible = true;
newnode = NewAdvTreeNode("Accessory Sections", true, true);
advTreeStepTypes.Nodes.Add(newnode);
foreach (StepDataRetval sdr in lstSrchStpTypes)
{
StepDataList sdl = fmtdata.StepDataList; ;
StepData sd = sdl[sdr.Index]; // get the step type record
string parentName = sd.ParentType; // this gets the parent of the this step/substep type
newnode = new DevComponents.AdvTree.Node();
newnode.Text = sdr.Name;
newnode.Name = sd.Type; // this needed for the FindNodeByName() function
newnode.Tag = sd;
newnode.Selectable = true;
newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
newnode.CheckBoxThreeState = false;
newnode.CheckBoxVisible = true;
// if the parent node exists in the tree, then add the new node to that parent
// else, it is a parent node, so add it as a new parent
DevComponents.AdvTree.Node parnode = advTreeStepTypes.FindNodeByName(parentName);
// Group by High Level Steps, Substeps, Cautions, Notes, Figures, Tables
while (!parentName.Equals("Base") && !parentName.Equals("Substep") && !parentName.Equals("High") &&
!parentName.Equals("Caution") && !parentName.Equals("Note") && !parentName.Equals("Table") &&
!parentName.Equals("Figure"))
{
StepData tmpsd = (StepData)parnode.Tag;
parentName = tmpsd.ParentType;
parnode = advTreeStepTypes.FindNodeByName(parentName);
}
if (parnode != null)
{
parnode.Nodes.Add(newnode);
parnode.Nodes.Sort(); // sort the second level of the tree
}
else
advTreeStepTypes.Nodes.Add(newnode);
//Console.WriteLine("{0} {1} - {2}", parentName,sd.Type,sdr.Name);
//newnode = new DevComponents.AdvTree.Node();
//newnode.Text = sdr.Name;
//newnode.Name = sd.Type; // this needed for the FindNodeByName() function
//newnode.Tag = sd;
//newnode.Selectable = true;
//newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
//newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
//newnode.CheckBoxThreeState = false;
//newnode.CheckBoxVisible = true;
if (parentName.Equals("Base"))
{
newnode = NewAdvTreeNode(sdr.Name, true, true);
newnode.Tag = sd;
newnode.Name = sd.Type;
DevComponents.AdvTree.Node pnode = NewAdvTreeNode(sd.Type, true, false); //create parent node (non selectable)
pnode.Name = sd.Type;
pnode.Nodes.Add(newnode);
pnode.Nodes.Sort();
advTreeStepTypes.Nodes.Add(pnode);
}
else
{
newnode = NewAdvTreeNode(sdr.Name, true, true);
newnode.Name = sd.Type; // this needed for the FindNodeByName() function
newnode.Tag = sd;
// if the parent node exists in the tree, then add the new node to that parent
// else, it is a parent node, so add it as a new parent
DevComponents.AdvTree.Node parnode = advTreeStepTypes.FindNodeByName(parentName);
// Group by High Level Steps, Substeps, Cautions, Notes, Figures, Tables
while (!parentName.Equals("Base") && !parentName.Equals("Substep") && !parentName.Equals("High") &&
!parentName.Equals("Caution") && !parentName.Equals("Note") && !parentName.Equals("Table") &&
!parentName.Equals("Figure"))
{
StepData tmpsd = (StepData)parnode.Tag;
parentName = tmpsd.ParentType;
parnode = advTreeStepTypes.FindNodeByName(parentName);
}
if (parnode != null)
{
parnode.Nodes.Add(newnode);
parnode.Nodes.Sort(); // sort the second level of the tree
}
else
advTreeStepTypes.Nodes.Add(newnode);
}
}
advTreeStepTypes.Nodes.Sort(); // sort the first level of the tree
}