Allow search to work on the basis of Folders, rather than DocVersions (Working Draft).
This commit is contained in:
parent
5feabe3a89
commit
3cd0e1cae7
@ -342,13 +342,20 @@ namespace Volian.Controls.Library
|
||||
newnode = new DevComponents.AdvTree.Node();
|
||||
newnode.Text = nodetext;
|
||||
newnode.Selectable = selectable;
|
||||
AddCheckBox(chxbxvisable, newnode);//C2016-045 Allow Folders to be selected.
|
||||
return newnode;
|
||||
}
|
||||
//C2016-045 Allow Folders to be selected.
|
||||
private void AddCheckBox(bool chxbxvisable, DevComponents.AdvTree.Node newnode)
|
||||
{
|
||||
newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
|
||||
newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
|
||||
newnode.CheckBoxThreeState = false;
|
||||
newnode.CheckBoxVisible = chxbxvisable;
|
||||
return newnode;
|
||||
// Set newnode.Checked = parent.Checked
|
||||
if(newnode.Parent != null)
|
||||
newnode.Checked = newnode.Parent.Checked;
|
||||
}
|
||||
|
||||
public void advTreeStepTypesFillIn()
|
||||
{
|
||||
DevComponents.AdvTree.Node topnode = new DevComponents.AdvTree.Node();
|
||||
@ -464,23 +471,7 @@ namespace Volian.Controls.Library
|
||||
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);
|
||||
//}
|
||||
AddCheckBox(true, newnode);//C2016-045 Allow Folders to be selected.
|
||||
cntnd++;
|
||||
if (fic.ChildFolderCount > 0 || fic.FolderDocVersionCount > 0) // allow for '+' for tree expansion
|
||||
{
|
||||
@ -496,12 +487,7 @@ namespace Volian.Controls.Library
|
||||
DevComponents.AdvTree.Node newnode = new DevComponents.AdvTree.Node();
|
||||
newnode.Text = fi.ToString();
|
||||
newnode.Tag = fi;
|
||||
//newnode.Checked = true;
|
||||
//newnode.Selectable = true;
|
||||
//newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
|
||||
//newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
|
||||
//newnode.CheckBoxThreeState = false;
|
||||
//newnode.CheckBoxVisible = true;
|
||||
AddCheckBox(true, newnode);//C2016-045 Allow Folders to be selected.
|
||||
AddDocVersionNodes(newnode, fi, true);
|
||||
topnode.Nodes.Add(newnode);
|
||||
lstCheckedDocVersions.Add(Mydocversion);
|
||||
@ -564,6 +550,7 @@ namespace Volian.Controls.Library
|
||||
newnode.Text = fic.ToString();
|
||||
newnode.Tag = fic;
|
||||
par.Nodes.Add(newnode);
|
||||
AddCheckBox(true, newnode);//C2016-045 Allow Folders to be selected.
|
||||
if (fic.HasChildren) // allow for '+' for tree expansion
|
||||
{
|
||||
DevComponents.AdvTree.Node tnt = new DevComponents.AdvTree.Node();
|
||||
@ -589,10 +576,7 @@ namespace Volian.Controls.Library
|
||||
newnode.Text = dv.ToString();
|
||||
newnode.Tag = dv;
|
||||
newnode.Selectable = true;
|
||||
newnode.CheckBoxAlignment = DevComponents.AdvTree.eCellPartAlignment.NearCenter;
|
||||
newnode.CheckBoxStyle = eCheckBoxStyle.CheckBox;
|
||||
newnode.CheckBoxThreeState = false;
|
||||
newnode.CheckBoxVisible = true;
|
||||
AddCheckBox(true, newnode);//C2016-045 Allow Folders to be selected.
|
||||
newnode.Checked = isChecked;
|
||||
if (tabSearchTypes.SelectedTab == tabTranSearch)
|
||||
{
|
||||
@ -1491,6 +1475,8 @@ namespace Volian.Controls.Library
|
||||
if (n.Checked)
|
||||
{
|
||||
n.Style = DevComponents.AdvTree.NodeStyles.Apple;
|
||||
if (n.Tag is DocVersionInfo)//If it is a DocVersion add one DocVersion ID
|
||||
{
|
||||
lstCheckedDocVersions.Add((DocVersionInfo)n.Tag);
|
||||
if (lstCheckedDocVersions.Count == 1)//Mydocversion == null)
|
||||
{
|
||||
@ -1498,9 +1484,16 @@ namespace Volian.Controls.Library
|
||||
advTreeStepTypesFillIn();
|
||||
}
|
||||
}
|
||||
else if (n.Tag is FolderInfo) // If it is a folder add all of the doc version children
|
||||
{
|
||||
AddAllVersions(n.Tag as FolderInfo);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
n.Style = null;
|
||||
if (n.Tag is DocVersionInfo)// If docVersion Remove 1 DocVersion
|
||||
{
|
||||
lstCheckedDocVersions.Remove((DocVersionInfo)n.Tag);
|
||||
if (lstCheckedDocVersions.Count == 1)
|
||||
{
|
||||
@ -1524,6 +1517,11 @@ namespace Volian.Controls.Library
|
||||
buildStepTypePannelTitle();
|
||||
}
|
||||
}
|
||||
else if (n.Tag is FolderInfo) // If foldre remove all docversion children.
|
||||
{
|
||||
RemoveAllVersions(n.Tag as FolderInfo);
|
||||
}
|
||||
}
|
||||
//// Enable the RO combo list only if at least one procedure set node
|
||||
//// is selected
|
||||
//cmboTreeROs.Enabled = (lstCheckedDocVersions.Count > 0);
|
||||
@ -1533,7 +1531,28 @@ namespace Volian.Controls.Library
|
||||
|
||||
buildSetToSearchPanelTitle();
|
||||
}
|
||||
|
||||
// remove all docversion children
|
||||
private void RemoveAllVersions(FolderInfo myFolderInfo)
|
||||
{
|
||||
if (myFolderInfo.FolderDocVersionCount > 0)
|
||||
foreach(DocVersionInfo dvi in myFolderInfo.FolderDocVersions)
|
||||
if(lstCheckedDocVersions.Contains (dvi))
|
||||
lstCheckedDocVersions.Remove(dvi);
|
||||
if (myFolderInfo.ChildFolders != null)
|
||||
foreach (FolderInfo folderChild in myFolderInfo.ChildFolders)
|
||||
RemoveAllVersions(folderChild);
|
||||
}
|
||||
// add all docversion children
|
||||
private void AddAllVersions(FolderInfo myFolderInfo)
|
||||
{
|
||||
if (myFolderInfo.FolderDocVersionCount > 0)
|
||||
foreach(DocVersionInfo dvi in myFolderInfo.FolderDocVersions)
|
||||
if(!lstCheckedDocVersions.Contains (dvi))
|
||||
lstCheckedDocVersions.Add(dvi);
|
||||
if (myFolderInfo.ChildFolders != null)
|
||||
foreach (FolderInfo folderChild in myFolderInfo.ChildFolders)
|
||||
AddAllVersions(folderChild);
|
||||
}
|
||||
private void cbxTranFormatFillIn(string vid)
|
||||
{
|
||||
vid = vid.IndexOf(",") < 0 ? vid : vid.Substring(0, cbxTranVersion.Tag.ToString().IndexOf(","));
|
||||
@ -1556,13 +1575,10 @@ namespace Volian.Controls.Library
|
||||
_DoingRange = (etm & E_TransUI.StepLast) == E_TransUI.StepLast;
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
private void xpSetToSearch_ExpandedChanged(object sender, ExpandedChangeEventArgs e)
|
||||
{
|
||||
buildSetToSearchPanelTitle();
|
||||
}
|
||||
|
||||
private void buildSetToSearchPanelTitle()
|
||||
{
|
||||
if (lstCheckedDocVersions.Count == 0)
|
||||
@ -1590,19 +1606,19 @@ namespace Volian.Controls.Library
|
||||
btnSearch.Enabled = true;
|
||||
tabSearchTypes.Enabled = true; // enable all the search tabs
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void advTreeProcSets_AfterNodeSelect(object sender, AdvTreeNodeEventArgs e)
|
||||
{
|
||||
DevComponents.AdvTree.Node n = advTreeProcSets.SelectedNode;
|
||||
if (advTreeStepTypes.Nodes.Count == 1 && n.Checked)
|
||||
{
|
||||
if (n.Tag is DocVersionInfo) // Only set MyDocVersion if it is a DocVersion
|
||||
{
|
||||
Mydocversion = (DocVersionInfo)n.Tag;
|
||||
advTreeStepTypesFillIn();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region StepTypeSelection
|
||||
|
Loading…
x
Reference in New Issue
Block a user