Author: jpobst
Date: 2008-02-19 11:10:23 -0500 (Tue, 19 Feb 2008)
New Revision: 96160
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/ChangeLog
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/FlowLayout.cs
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FlowPanelTests.cs
Log:
2008-02-19 Jonathan Pobst <[EMAIL PROTECTED]>
* FlowLayout.cs: Take padding into account when determining if there
is still room left on a row. [Fixes bug #361448]
2008-02-19 Jonathan Pobst <[EMAIL PROTECTED]>
* FlowPanelTests.cs: Add test for bug #361448.
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/ChangeLog
===================================================================
--- trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/ChangeLog
2008-02-19 15:59:12 UTC (rev 96159)
+++ trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/ChangeLog
2008-02-19 16:10:23 UTC (rev 96160)
@@ -1,3 +1,8 @@
+2008-02-19 Jonathan Pobst <[EMAIL PROTECTED]>
+
+ * FlowLayout.cs: Take padding into account when determining if there
+ is still room left on a row. [Fixes bug #361448]
+
2008-01-23 Jonathan Pobst <[EMAIL PROTECTED]>
* TableLayout.cs: Don't include Dock.Fill, multicolumn/multirow spanned
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/FlowLayout.cs
===================================================================
---
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/FlowLayout.cs
2008-02-19 15:59:12 UTC (rev 96159)
+++
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Layout/FlowLayout.cs
2008-02-19 16:10:23 UTC (rev 96160)
@@ -124,7 +124,7 @@
// Decide if it's time to start
a new row
// - Our settings must be
WrapContents, and we ran out of room or the previous control's FlowBreak == true
if (settings.WrapContents &&
!(parent is ToolStripPanel))
- if
((parentDisplayRectangle.Width - currentLocation.X) < (c.Width + c.Margin.Left
+ c.Margin.Right) || forceFlowBreak) {
+ if
((parentDisplayRectangle.Width + parentDisplayRectangle.Left -
currentLocation.X) < (c.Width + c.Margin.Left + c.Margin.Right) ||
forceFlowBreak) {
currentLocation.Y = FinishRow (rowControls);
currentLocation.X = parentDisplayRectangle.Left;
@@ -164,7 +164,7 @@
// Decide if it's time to start
a new column
// - Our settings must be
WrapContents, and we ran out of room or the previous control's FlowBreak == true
if (settings.WrapContents)
- if
((parentDisplayRectangle.Height - currentLocation.Y) < (c.Height + c.Margin.Top
+ c.Margin.Bottom) || forceFlowBreak) {
+ if
((parentDisplayRectangle.Height + parentDisplayRectangle.Top -
currentLocation.Y) < (c.Height + c.Margin.Top + c.Margin.Bottom) ||
forceFlowBreak) {
currentLocation.X = FinishColumn (rowControls);
currentLocation.Y = parentDisplayRectangle.Top;
Modified:
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog
===================================================================
--- trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog
2008-02-19 15:59:12 UTC (rev 96159)
+++ trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog
2008-02-19 16:10:23 UTC (rev 96160)
@@ -1,3 +1,7 @@
+2008-02-19 Jonathan Pobst <[EMAIL PROTECTED]>
+
+ * FlowPanelTests.cs: Add test for bug #361448.
+
2008-02-19 Jonathan Pobst <[EMAIL PROTECTED]>
* ComboBoxTest.cs: Add test for bug #360862.
Modified:
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FlowPanelTests.cs
===================================================================
---
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FlowPanelTests.cs
2008-02-19 15:59:12 UTC (rev 96159)
+++
trunk/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/FlowPanelTests.cs
2008-02-19 16:10:23 UTC (rev 96160)
@@ -1302,6 +1302,30 @@
}
}
#endregion
+
+ [Test]
+ public void Padding ()
+ {
+ Form f = new Form ();
+
+ FlowLayoutPanel flp = new FlowLayoutPanel ();
+ flp.Padding = new Padding (20);
+ flp.Size = new Size (100, 100);
+
+ Button b = new Button ();
+ b.Size = new Size (50, 50);
+
+ Button b2 = new Button ();
+ b2.Size = new Size (50, 50);
+
+ flp.Controls.Add (b);
+ flp.Controls.Add (b2);
+
+ f.Controls.Add (flp);
+
+ Assert.AreEqual (new Rectangle (23, 23, 50, 50),
b.Bounds, "A1");
+ Assert.AreEqual (new Rectangle (23, 79, 50, 50),
b2.Bounds, "A2");
+ }
}
}
#endif
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches