]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/frame.cpp
toolbartool has to send events to parent for tooltips to work
[wxWidgets.git] / src / mac / carbon / frame.cpp
index 9bb8cb9357371115831107e60e0b2a7b90068fd8..b7cf5ad247a8fccf70a3deb0ad796a1551e816ff 100644 (file)
@@ -110,23 +110,21 @@ wxStatusBar *wxFrame::OnCreateStatusBar(int number, long style, wxWindowID id,
 
     statusBar = new wxStatusBar(this, id,
         style, name);
-    statusBar->SetSize( 100 , 15 ) ;
+    statusBar->SetSize( 100 , WX_MAC_STATUSBAR_HEIGHT ) ;
     statusBar->SetFieldsCount(number);
     return statusBar;
 }
 
 void wxFrame::PositionStatusBar()
 {
-    if (m_frameStatusBar )
+    if (m_frameStatusBar && m_frameStatusBar->IsShown() )
     {
         int w, h;
         GetClientSize(&w, &h);
-        int sw, sh;
-        m_frameStatusBar->GetSize(&sw, &sh);
         
         // Since we wish the status bar to be directly under the client area,
         // we use the adjusted sizes without using wxSIZE_NO_ADJUSTMENTS.
-        m_frameStatusBar->SetSize(0, h, w, sh);
+        m_frameStatusBar->SetSize(0, h, w, WX_MAC_STATUSBAR_HEIGHT);
     }
 }
 
@@ -226,11 +224,9 @@ void wxFrame::DoGetClientSize(int *x, int *y) const
     wxTopLevelWindow::DoGetClientSize( x , y ) ;
     
 #if wxUSE_STATUSBAR
-    if ( GetStatusBar() && y )
+    if ( GetStatusBar() && GetStatusBar()->IsShown() && y )
     {
-        int statusX, statusY;
-        GetStatusBar()->GetSize(&statusX, &statusY);
-        if ( y) *y -= statusY;
+        if ( y) *y -= WX_MAC_STATUSBAR_HEIGHT;
     }
 #endif // wxUSE_STATUSBAR
     
@@ -293,7 +289,7 @@ void wxFrame::PositionToolBar()
 
     GetSize( &cw , &ch ) ;
 
-    if ( GetStatusBar() )
+    if ( GetStatusBar() && GetStatusBar()->IsShown())
     {
       int statusX, statusY;
       GetStatusBar()->GetClientSize(&statusX, &statusY);