diff --git a/PROMS/Volian.Controls.Library/DisplaySearch.cs b/PROMS/Volian.Controls.Library/DisplaySearch.cs index 02df6bc8..9baa5b2e 100644 --- a/PROMS/Volian.Controls.Library/DisplaySearch.cs +++ b/PROMS/Volian.Controls.Library/DisplaySearch.cs @@ -429,12 +429,18 @@ namespace Volian.Controls.Library } buildStepTypePannelTitle(); } + private int _TopFolderID = 1; + public int TopFolderID + { + get { return _TopFolderID; } + set { _TopFolderID = value; } + } public void advTreeProcSetsFillIn(bool blSeachTabClicked) { DevComponents.AdvTree.Node topnode = null; int cntnd = 0; - VETreeNode vtn = VETreeNode.GetFolder(1); + VETreeNode vtn = VETreeNode.GetFolder(TopFolderID); FolderInfo fi = vtn.VEObject as FolderInfo; int fiCount = fi.ChildFolderCount; advTreeProcSets.Nodes.Clear(); @@ -445,39 +451,56 @@ namespace Volian.Controls.Library advTreeProcSets.Nodes.Add(topnode); //advTreeProcSets.AfterNodeInsert += new TreeNodeCollectionEventHandler(advTreeProcSets_AfterNodeInsert); - - foreach (FolderInfo fic in fi.ChildFolders) + if (fi.ChildFolders != null) { - 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); - //} - cntnd++; - if (fic.ChildFolderCount > 0 || fic.FolderDocVersionCount > 0) // allow for '+' for tree expansion + foreach (FolderInfo fic in fi.ChildFolders) { - DevComponents.AdvTree.Node tnt = new DevComponents.AdvTree.Node(); - tnt.Text = "VLN_DUMMY"; - newnode.Nodes.Add(tnt); - topnode.Nodes.Add(newnode); + 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); + //} + cntnd++; + if (fic.ChildFolderCount > 0 || fic.FolderDocVersionCount > 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); + } } } - + else + { + 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; + AddDocVersionNodes(newnode, fi, true); + topnode.Nodes.Add(newnode); + lstCheckedDocVersions.Add(Mydocversion); + buildSetToSearchPanelTitle(); + } // if nothing was added to the tree, just put in the node above the docversions... if (advTreeProcSets.Nodes.Count == 0) { @@ -545,33 +568,39 @@ namespace Volian.Controls.Library } else if (fi.FolderDocVersionCount > 0) { - foreach (DocVersionInfo dv in fi.FolderDocVersions) - { - //if ((VersionTypeEnum)dv.VersionType == VersionTypeEnum.WorkingDraft) - //{ - DevComponents.AdvTree.Node newnode = new DevComponents.AdvTree.Node(); - 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; - if (tabSearchTypes.SelectedTab == tabTranSearch) - { - if (!dicSelectedDocVersionNodes.ContainsKey(newnode)) dicSelectedDocVersionNodes.Add(newnode, false); - newnode.Enabled = cbxTranVersion.Tag != null ? cbxTranVersion.Tag.ToString().Contains(dv.VersionID.ToString()) : false; - } - else - newnode.Enabled = true; - par.Nodes.Add(newnode); - dicExpandedDocVersionNodes.Add(newnode, newnode.Enabled); - //} - } + AddDocVersionNodes(par, fi, false); } } } + private void AddDocVersionNodes(DevComponents.AdvTree.Node par, FolderInfo fi, bool isChecked) + { + foreach (DocVersionInfo dv in fi.FolderDocVersions) + { + //if ((VersionTypeEnum)dv.VersionType == VersionTypeEnum.WorkingDraft) + //{ + DevComponents.AdvTree.Node newnode = new DevComponents.AdvTree.Node(); + 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; + newnode.Checked = isChecked; + if (tabSearchTypes.SelectedTab == tabTranSearch) + { + if (!dicSelectedDocVersionNodes.ContainsKey(newnode)) dicSelectedDocVersionNodes.Add(newnode, false); + newnode.Enabled = cbxTranVersion.Tag != null ? cbxTranVersion.Tag.ToString().Contains(dv.VersionID.ToString()) : false; + } + else + newnode.Enabled = true; + par.Nodes.Add(newnode); + dicExpandedDocVersionNodes.Add(newnode, newnode.Enabled); + //} + } + } + private Node LookInTree(NodeCollection monkeys, string bananna) { Node foundit = null; diff --git a/PROMS/Volian.Controls.Library/StepRTB.cs b/PROMS/Volian.Controls.Library/StepRTB.cs index af258880..f64223c9 100644 --- a/PROMS/Volian.Controls.Library/StepRTB.cs +++ b/PROMS/Volian.Controls.Library/StepRTB.cs @@ -477,7 +477,7 @@ namespace Volian.Controls.Library ActiveMode = activeMode; OnAdjustTableWidth(this, new StepRTBTableWidthEventArgs(true)); _InitializingRTB = true; - DisplayText vlntxt = new DisplayText(MyItemInfo, E_EditPrintMode.Edit, VwMode, !ActiveMode, FieldToEdit, true,null, null); + DisplayText vlntxt = new DisplayText(MyItemInfo, E_EditPrintMode.Edit, VwMode, !ActiveMode, FieldToEdit, true,null, null,false); //if (_origDisplayText != null && vlntxt.StartText == _origDisplayText.StartText) //{ // ReadOnly = !(EpMode == E_EditPrintMode.Edit && VwMode == E_ViewMode.Edit);