From f20adce7ef8905fd405e26ab198c24efc35be2f0 Mon Sep 17 00:00:00 2001 From: Rich Date: Tue, 28 Oct 2014 11:19:30 +0000 Subject: [PATCH] Added a TreeView menu option to collapse procedures. Requested by Bob Bleacher of Calvert. --- PROMS/Volian.Controls.Library/vlnTreeView.cs | 23 ++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/PROMS/Volian.Controls.Library/vlnTreeView.cs b/PROMS/Volian.Controls.Library/vlnTreeView.cs index 095edcb3..730d774a 100644 --- a/PROMS/Volian.Controls.Library/vlnTreeView.cs +++ b/PROMS/Volian.Controls.Library/vlnTreeView.cs @@ -774,6 +774,8 @@ namespace Volian.Controls.Library } else if (!tn.IsExpanded) cm.MenuItems.Add("Open", new EventHandler(mi_Click)); + else + cm.MenuItems.Add("Collapse Procedures", new EventHandler(mi_Click)); #endregion #region Menu_CutCopy // For initial release, copy is not available for folders or docversions @@ -1138,6 +1140,11 @@ namespace Volian.Controls.Library MenuItem mi = sender as MenuItem; if (mi == null) return; + if (mi.Text == "Collapse Procedures") + { + CollapseProcedures(); + return; + } if (mi.Text == "Export Procedure Set" || mi.Text == "Export Procedure") { OnExportImportProcedureSets(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0)); @@ -1286,6 +1293,22 @@ namespace Volian.Controls.Library break; } } + private void CollapseProcedures() + { + CollapseProcedures(SelectedNode as VETreeNode); + } + private void CollapseProcedures(VETreeNode tn) + { + if (tn == null) return; + if (!tn.IsExpanded) return; + if (tn.VEObject.GetType() == typeof(ProcedureInfo)) + { + tn.Collapse(); + return; + } + foreach (VETreeNode tnc in tn.Nodes) + CollapseProcedures(tnc); + } private void tv_RemoveChgIds() { Console.WriteLine("HERE"); // add code/query to clear change ids in config.