diff --git a/PROMS/Volian.Controls.Library/DisplaySearch.cs b/PROMS/Volian.Controls.Library/DisplaySearch.cs index b8d7122f..34ad35e2 100644 --- a/PROMS/Volian.Controls.Library/DisplaySearch.cs +++ b/PROMS/Volian.Controls.Library/DisplaySearch.cs @@ -1508,13 +1508,7 @@ namespace Volian.Controls.Library if (lstCheckedDocVersions.Count == 0) Mydocversion = null; // do this if either none, or more than one procedure set selected - advTreeStepTypes.Nodes.Clear(); - lstCheckedStepTypes.Clear(); - lstCheckedStepTypesStr.Clear(); - Node newnode = new DevComponents.AdvTree.Node(); - newnode.Text = "....select a procedure set for types to appear..."; - advTreeStepTypes.Nodes.Add(newnode); - buildStepTypePannelTitle(); + ResetStepTypes();// } } else if (n.Tag is FolderInfo) // If foldre remove all docversion children. @@ -1531,8 +1525,57 @@ namespace Volian.Controls.Library buildSetToSearchPanelTitle(); } + private void RemoveAllVersions(FolderInfo child) + { + RemoveAllChildVersions(child); + RefreshStepTypes(); // Refresh the Step Type TreeView + } + /// + /// RessetStepTypes - Clear Step Type Treeview + /// + private void ResetStepTypes() + { + ResetStepTypes("....select a procedure set for types to appear..."); + } + private void ResetStepTypes(string str) + { + advTreeStepTypes.Nodes.Clear(); + lstCheckedStepTypes.Clear(); + lstCheckedStepTypesStr.Clear(); + Node newnode = new DevComponents.AdvTree.Node(); + newnode.Text = str; + advTreeStepTypes.Nodes.Add(newnode); + buildStepTypePannelTitle(); + } + private void AddAllVersions(FolderInfo child) + { + AddAllChildVersions(child); + RefreshStepTypes(); + } + /// + /// RefreshStepTypes - Updates the StepType TreeView to allow step types to be specified. + /// + private void RefreshStepTypes() + { + if (lstCheckedDocVersions.Count == 0) + { + ResetStepTypes(); + return; + } + string formatName = lstCheckedDocVersions[0].ActiveFormat.Name; + foreach (DocVersionInfo dvi in lstCheckedDocVersions) + { + if (formatName != dvi.ActiveFormat.Name) + { + ResetStepTypes("... folders selected include mutliple formats"); + return; + } + } + _MyDocVersion = lstCheckedDocVersions[0]; + advTreeStepTypesFillIn(); + } // remove all docversion children - private void RemoveAllVersions(FolderInfo myFolderInfo) + private void RemoveAllChildVersions(FolderInfo myFolderInfo) { if (myFolderInfo.FolderDocVersionCount > 0) foreach(DocVersionInfo dvi in myFolderInfo.FolderDocVersions) @@ -1540,18 +1583,18 @@ namespace Volian.Controls.Library lstCheckedDocVersions.Remove(dvi); if (myFolderInfo.ChildFolders != null) foreach (FolderInfo folderChild in myFolderInfo.ChildFolders) - RemoveAllVersions(folderChild); + RemoveAllChildVersions(folderChild); } // add all docversion children - private void AddAllVersions(FolderInfo myFolderInfo) + private void AddAllChildVersions(FolderInfo myFolderInfo) { if (myFolderInfo.FolderDocVersionCount > 0) foreach(DocVersionInfo dvi in myFolderInfo.FolderDocVersions) - if(!lstCheckedDocVersions.Contains (dvi)) + if (!lstCheckedDocVersions.Contains(dvi)) lstCheckedDocVersions.Add(dvi); if (myFolderInfo.ChildFolders != null) foreach (FolderInfo folderChild in myFolderInfo.ChildFolders) - AddAllVersions(folderChild); + AddAllChildVersions(folderChild); } private void cbxTranFormatFillIn(string vid) {