better tree node logic
This commit is contained in:
parent
a2ce52dd54
commit
8cfc46ffde
@ -210,39 +210,47 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
DevComponents.AdvTree.Node topnode = null;
|
||||
int cntnd = 0;
|
||||
VETreeNode vtn = VETreeNode.GetFolder(1);
|
||||
VETreeNode vtn = VETreeNode.GetFolder(1);
|
||||
FolderInfo fi = vtn.VEObject as FolderInfo;
|
||||
int fiCount = fi.ChildFolderCount;
|
||||
advTreeProcSets.Nodes.Clear();
|
||||
lstCheckedDocVersions.Clear();
|
||||
topnode = new DevComponents.AdvTree.Node();
|
||||
topnode.Text = "Available Procedure Sets";
|
||||
topnode.Tag = fi;
|
||||
advTreeProcSets.Nodes.Add(topnode);
|
||||
|
||||
|
||||
|
||||
foreach (FolderInfo fic in fi.ChildFolders)
|
||||
{
|
||||
DevComponents.AdvTree.Node newnode = new DevComponents.AdvTree.Node();
|
||||
newnode.Text = fic.ToString();
|
||||
newnode.Tag = fic;
|
||||
|
||||
int tmp;
|
||||
if (topnode == null)
|
||||
{
|
||||
newnode.Text = "Available Procedure Sets";
|
||||
tmp = advTreeProcSets.Nodes.Add(newnode);
|
||||
topnode = newnode;
|
||||
}
|
||||
else
|
||||
{
|
||||
newnode.Selectable = true;
|
||||
newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
|
||||
newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
|
||||
newnode.CheckBoxThreeState = false;
|
||||
newnode.CheckBoxVisible = true;
|
||||
tmp = topnode.Nodes.Add(newnode);
|
||||
}
|
||||
//int tmp;
|
||||
//if (topnode == null)
|
||||
//{
|
||||
// newnode.Text = "Available Procedure Sets";
|
||||
// tmp = advTreeProcSets.Nodes.Add(newnode);
|
||||
// topnode = newnode;
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// newnode.Selectable = true;
|
||||
// newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
|
||||
// newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
|
||||
// newnode.CheckBoxThreeState = false;
|
||||
// newnode.CheckBoxVisible = true;
|
||||
// tmp = topnode.Nodes.Add(newnode);
|
||||
//}
|
||||
cntnd++;
|
||||
if (fic.ChildFolderCount > 0) // allow for '+' for tree expansion
|
||||
{
|
||||
DevComponents.AdvTree.Node tnt = new DevComponents.AdvTree.Node();
|
||||
tnt.Text = "VLN_DUMMY";
|
||||
newnode.Nodes.Add(tnt);
|
||||
topnode.Nodes.Add(newnode);
|
||||
}
|
||||
}
|
||||
|
||||
@ -342,10 +350,21 @@ namespace Volian.Controls.Library
|
||||
bool keeplooking = true;
|
||||
//build a stack (bread crumb trail) of where is procedure set came from within the tree.
|
||||
Stack<string> crumbs = new Stack<string>();
|
||||
crumbs.Push(Mydocversion.Name); // ex: "working draft"
|
||||
crumbs.Push(Mydocversion.MyFolder.Name); // ex: "Emergency Procedures"
|
||||
crumbs.Push(Mydocversion.MyFolder.MyParent.Name); // ex: "STPNOC-South Texas"
|
||||
crumbs.Push(advTreeProcSets.Nodes[0].Text); //top node of my tree
|
||||
//crumbs.Push(Mydocversion.Name); // ex: "working draft"
|
||||
//crumbs.Push(Mydocversion.MyFolder.Name); // ex: "Emergency Procedures"
|
||||
//crumbs.Push(Mydocversion.MyFolder.MyParent.Name); // ex: "STPNOC-South Texas"
|
||||
//crumbs.Push(advTreeProcSets.Nodes[0].Text); //top node of my tree
|
||||
|
||||
crumbs.Push(Mydocversion.Name); // ex: "working draft"
|
||||
crumbs.Push(Mydocversion.MyFolder.Name); // ex: "Emergency Procedures"
|
||||
FolderInfo fi = Mydocversion.MyFolder.MyParent;
|
||||
while (fi != null)
|
||||
{
|
||||
if (fi.MyParent != null)
|
||||
crumbs.Push(fi.Name);
|
||||
fi = fi.MyParent;
|
||||
}
|
||||
crumbs.Push(advTreeProcSets.Nodes[0].Text); //top node of my tree
|
||||
|
||||
// now walk the tree, looking for the node names we saved in the stack.
|
||||
NodeCollection monkeys = advTreeProcSets.Nodes;
|
||||
|
Loading…
x
Reference in New Issue
Block a user