Diff of /trunk/source/RssBandit/WinGui/Controls/TreeView/TreeHelper.cs [r416] .. [r417] Maximize Restore

  Switch to side-by-side view

--- a/trunk/source/RssBandit/WinGui/Controls/TreeView/TreeHelper.cs
+++ b/trunk/source/RssBandit/WinGui/Controls/TreeView/TreeHelper.cs
@@ -1,9 +1,9 @@
 #region CVS Version Header
 /*
- * $Id: TreeHelper.cs 359 2008-02-24 13:36:21Z carnage4life $
- * Last modified by $Author: carnage4life $
- * Last modified at $Date: 2008-02-24 13:36:21 +0000 (Sun, 24 Feb 2008) $
- * $Revision: 359 $
+ * $Id: TreeHelper.cs 417 2008-03-14 14:31:22Z t_rendelmann $
+ * Last modified by $Author: t_rendelmann $
+ * Last modified at $Date: 2008-03-14 14:31:22 +0000 (Fri, 14 Mar 2008) $
+ * $Revision: 417 $
  */
 #endregion
 
@@ -947,13 +947,15 @@
 				HybridDictionary nodes = new HybridDictionary(expandedNodes.Count);
 				for (int i=0; i < expandedNodes.Count; i++) {
 					string path = (string)expandedNodes[i];
-					nodes.Add(path, null);
+					if (!nodes.Contains(path)) 
+						nodes.Add(path, null);
 				}
 
 				HybridDictionary selNodes = new HybridDictionary(selectedNodes.Count);
 				for (int i=0; i < selectedNodes.Count; i++) {
 					string path = (string)selectedNodes[i];
-					selNodes.Add(path, null);
+					if (!selNodes.Contains(path))
+						selNodes.Add(path, null);
 				}
 
 				foreach (TreeFeedsNodeBase n in tree.Nodes) {
@@ -1004,13 +1006,15 @@
 				HybridDictionary nodes = new HybridDictionary(expandedNodes.Count);
 				for (int i=0; i < expandedNodes.Count; i++) {
 					string path = (string)expandedNodes[i];
-					nodes.Add(path, null);
+					if (!nodes.Contains(path))
+						nodes.Add(path, null);
 				}
 
 				HybridDictionary selNodes = new HybridDictionary(selectedNodes.Count);
 				for (int i=0; i < selectedNodes.Count; i++) {
 					string path = (string)selectedNodes[i];
-					selNodes.Add(path, null);
+					if (!selNodes.Contains(path))
+						selNodes.Add(path, null);
 				}
 
 				foreach (TreeFeedsNodeBase n in node.Nodes) {