Author: jpobst
Date: 2007-05-07 11:16:54 -0400 (Mon, 07 May 2007)
New Revision: 76834

Modified:
   trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog
   trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStrip.cs
   
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStripManager.cs
   trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog
   
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ToolStripManagerTest.cs
Log:
2007-05-07  Jonathan Pobst  <[EMAIL PROTECTED]>

        * ToolStrip.cs: Do not call BeginMerge on DropDowns.
        * ToolStripManager.cs: Call Merge on DropDowns.
        [Fixes bug #81477]

2007-05-07  Jonathan Pobst  <[EMAIL PROTECTED]>

        * ToolStripManagerTest.cs: Add test for bug #81477.

Modified: trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog
===================================================================
--- trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog        
2007-05-07 15:13:32 UTC (rev 76833)
+++ trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog        
2007-05-07 15:16:54 UTC (rev 76834)
@@ -1,3 +1,9 @@
+2007-05-07  Jonathan Pobst  <[EMAIL PROTECTED]>
+
+       * ToolStrip.cs: Do not call BeginMerge on DropDowns.
+       * ToolStripManager.cs: Call Merge on DropDowns.
+       [Fixes bug #81477]
+
 2007-05-07  Rolf Bjarne Kvinge <[EMAIL PROTECTED]> 
 
        * XplatUIWin32.cs: Changed Win32CreateWindow to take enums instead of

Modified: 
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStrip.cs
===================================================================
--- trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStrip.cs     
2007-05-07 15:13:32 UTC (rev 76833)
+++ trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStrip.cs     
2007-05-07 15:16:54 UTC (rev 76834)
@@ -1512,10 +1512,6 @@
                                foreach (ToolStripItem tsi in this.Items)
                                        this.pre_merge_items.Add (tsi);
                                }
-                               
-                               if (this is MenuStrip)
-                                       foreach (ToolStripMenuItem tsmi in 
this.Items)
-                                               tsmi.DropDown.BeginMerge ();
                        }
                }
                

Modified: 
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStripManager.cs
===================================================================
--- 
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStripManager.cs  
    2007-05-07 15:13:32 UTC (rev 76833)
+++ 
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms/ToolStripManager.cs  
    2007-05-07 15:16:54 UTC (rev 76834)
@@ -305,8 +305,7 @@
                                                                        
ToolStripMenuItem source = (ToolStripMenuItem)tsi;
                                                                        
ToolStripMenuItem target = (ToolStripMenuItem)target_tsi;
                                                                        
-                                                                       while 
(source.DropDownItems.Count > 0)
-                                                                               
ToolStrip.SetItemParent (source.DropDownItems[0], target.DropDown);
+                                                                       
ToolStripManager.Merge (source.DropDown, target.DropDown);
                                                                }
                                                                
                                                                break;

Modified: 
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog
===================================================================
--- trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog   
2007-05-07 15:13:32 UTC (rev 76833)
+++ trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog   
2007-05-07 15:16:54 UTC (rev 76834)
@@ -1,3 +1,7 @@
+2007-05-07  Jonathan Pobst  <[EMAIL PROTECTED]>
+
+       * ToolStripManagerTest.cs: Add test for bug #81477.
+
 2007-05-04  Jonathan Pobst  <[EMAIL PROTECTED]>
 
        * ControlTest.cs: Expand GetChildAtPointTest to cover 2.0 cases.

Modified: 
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ToolStripManagerTest.cs
===================================================================
--- 
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ToolStripManagerTest.cs
     2007-05-07 15:13:32 UTC (rev 76833)
+++ 
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ToolStripManagerTest.cs
     2007-05-07 15:16:54 UTC (rev 76834)
@@ -503,6 +503,31 @@
                        Assert.AreEqual ("Open 2", tsmi2.DropDownItems[1].Text, 
"M12-4");
                }
 
+               [Test]  // For bug #81477
+               public void MethodMergeRecursive ()
+               {
+                       MenuStrip ms1 = new MenuStrip ();
+                       MenuStrip ms2 = new MenuStrip ();
+
+                       ToolStripMenuItem tsmi1 = 
(ToolStripMenuItem)ms1.Items.Add ("File");
+                       ToolStripMenuItem tsmi2 = 
(ToolStripMenuItem)ms2.Items.Add ("File");
+
+                       tsmi1.DropDownItems.Add ("New 1");
+                       tsmi1.DropDownItems.Add ("Open 1");
+
+                       tsmi2.DropDownItems.Add ("New 2");
+                       tsmi2.DropDownItems.Add ("Open 2");
+                       
+                       tsmi2.DropDownItems[0].MergeAction = MergeAction.Insert;
+                       tsmi2.DropDownItems[0].MergeIndex = 0;
+
+                       tsmi2.MergeAction = MergeAction.MatchOnly;
+
+                       ToolStripManager.Merge (ms2, ms1);
+
+                       Assert.AreEqual ("New 2", tsmi1.DropDownItems[0].Text, 
"M13");
+               }
+               
                [Test]
                [ExpectedException (typeof (ArgumentNullException))]
                public void MethodMergeANE1 ()

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to