Author: jpobst
Date: 2007-07-16 14:07:00 -0400 (Mon, 16 Jul 2007)
New Revision: 82052
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ButtonPainter.cs
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ChangeLog
Log:
2007-07-16 Jonathan Pobst <[EMAIL PROTECTED]>
* ButtonPainter.cs: For Flat button, if no mouse over / press
backcolor is specified, calculate one from the normal backcolor.
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ButtonPainter.cs
===================================================================
---
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ButtonPainter.cs
2007-07-16 17:31:29 UTC (rev 82051)
+++
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ButtonPainter.cs
2007-07-16 18:07:00 UTC (rev 82052)
@@ -111,10 +111,14 @@
case ButtonThemeState.Entered:
if (appearance.MouseOverBackColor !=
Color.Empty)
g.FillRectangle
(ResPool.GetSolidBrush (appearance.MouseOverBackColor), bounds);
+ else
+ g.FillRectangle
(ResPool.GetSolidBrush (ChangeIntensity (backColor, .9F)), bounds);
break;
case ButtonThemeState.Pressed:
if (appearance.MouseDownBackColor !=
Color.Empty)
g.FillRectangle
(ResPool.GetSolidBrush (appearance.MouseDownBackColor), bounds);
+ else
+ g.FillRectangle
(ResPool.GetSolidBrush (ChangeIntensity (backColor, .95F)), bounds);
break;
case ButtonThemeState.Default:
if (appearance.CheckedBackColor !=
Color.Empty)
@@ -175,5 +179,15 @@
}
#endregion
#endregion
+
+ private static Color ChangeIntensity (Color baseColor, float
percent)
+ {
+ int H, I, S;
+
+ ControlPaint.Color2HBS (baseColor, out H, out I, out S);
+ int NewIntensity = Math.Min (255, (int)(I * percent));
+
+ return ControlPaint.HBS2Color (H, NewIntensity, S);
+ }
}
}
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ChangeLog
===================================================================
---
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ChangeLog
2007-07-16 17:31:29 UTC (rev 82051)
+++
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.Theming/Default/ChangeLog
2007-07-16 18:07:00 UTC (rev 82052)
@@ -1,3 +1,8 @@
+2007-07-16 Jonathan Pobst <[EMAIL PROTECTED]>
+
+ * ButtonPainter.cs: For Flat button, if no mouse over / press
+ backcolor is specified, calculate one from the normal backcolor.
+
2007-07-12 Jonathan Pobst <[EMAIL PROTECTED]>
* ButtonPainter.cs: For Flat button, if BorderSize is 0, don't
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches