- Now Redraws on MouseUp for FlatStyle Flat and Popup
[mono.git] / mcs / class / Managed.Windows.Forms / System.Windows.Forms / ButtonBase.cs
index ca8f1bd617cc899f776d7e4e2a2cf26b46be897b..7c9e20fd7a1afe3fa6baca6e611ca437de5eb87a 100644 (file)
 //     Peter Bartok    pbartok@novell.com
 //
 // $Log: ButtonBase.cs,v $
+// Revision 1.12  2004/10/13 22:32:38  pbartok
+// - Now Redraws on MouseUp for FlatStyle Flat and Popup
+//
+// Revision 1.11  2004/10/13 20:12:47  pbartok
+// - Added the Redraw on Resize that got dropped in the last rev
+//
+// Revision 1.10  2004/10/05 04:56:11  jackson
+// Let the base Control handle the buffers, derived classes should not have to CreateBuffers themselves.
+//
 // Revision 1.9  2004/09/28 18:44:25  pbartok
 // - Streamlined Theme interfaces:
 //   * Each DrawXXX method for a control now is passed the object for the
@@ -132,10 +141,6 @@ namespace System.Windows.Forms {
                        Redraw();
                }
 
-               private void SizeEvent(object sender, System.EventArgs e) {
-                       this.CreateBuffers(this.client_size.Width, this.client_size.Height);
-                       Redraw();
-               }
                #endregion      // Private Properties and Methods
 
                #region Public Constructors
@@ -155,13 +160,13 @@ namespace System.Windows.Forms {
                        text_format.Alignment = StringAlignment.Center;
                        text_format.LineAlignment = StringAlignment.Center;
 
-                       CreateBuffers(client_size.Width, this.client_size.Height);
-
-                       SizeChanged+=new System.EventHandler(SizeEvent);
                        TextChanged+=new System.EventHandler(RedrawEvent);
                        ForeColorChanged+=new EventHandler(RedrawEvent);
                        BackColorChanged+=new System.EventHandler(RedrawEvent);
                        FontChanged+=new EventHandler(RedrawEvent);
+                       SizeChanged+=new EventHandler(RedrawEvent);
+
+                       SetStyle (ControlStyles.ResizeRedraw, true);
                }
                #endregion      // Public Constructors
 
@@ -458,6 +463,8 @@ namespace System.Windows.Forms {
                                if (is_pressed) {
                                        is_pressed = false;
                                        Redraw();
+                               } else if ((this.flat_style == FlatStyle.Flat) || (this.flat_style == FlatStyle.Popup)) {
+                                       Redraw();
                                }
 
                                if (mevent.X>=0 && mevent.Y>=0 && mevent.X<this.client_size.Width && mevent.Y<=this.client_size.Height) {