]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/statusbar.cpp
added Win32 TLS tests
[wxWidgets.git] / src / msw / statusbar.cpp
index aef8e5c5676e477b2555a2283bcb0d9eb04b548d..4baebc470bd894a3cde7004c93d51a0ee303d343 100644 (file)
@@ -125,11 +125,11 @@ bool wxStatusBar::Create(wxWindow *parent,
 
     // we must refresh the frame size when the statusbar is created, because
     // its client area might change
-    wxFrame *frame = wxDynamicCast(GetParent(), wxFrame);
-    if ( frame )
-    {
-        frame->SendSizeEvent();
-    }
+    //
+    // notice that we must post the event, not send it, as the frame doesn't
+    // know that we're its status bar yet so laying it out right now wouldn't
+    // work correctly, we need to wait until we return to the main loop
+    PostSizeEventToParent();
 
     return true;
 }
@@ -139,11 +139,7 @@ wxStatusBar::~wxStatusBar()
     // we must refresh the frame size when the statusbar is deleted but the
     // frame is not - otherwise statusbar leaves a hole in the place it used to
     // occupy
-    wxFrame *frame = wxDynamicCast(GetParent(), wxFrame);
-    if ( frame && !frame->IsBeingDeleted() )
-    {
-        frame->SendSizeEvent();
-    }
+    PostSizeEventToParent();
 }
 
 void wxStatusBar::SetFieldsCount(int nFields, const int *widths)