]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/statusbr.cpp
Updated to new PyCrust
[wxWidgets.git] / src / generic / statusbr.cpp
index e1739aa5c326d84aad43d5e4523959f8a14b865c..63f52319db41641c14f7394e8b51b58605f94702 100644 (file)
 
 #include "wx/statusbr.h"
 
 
 #include "wx/statusbr.h"
 
-// with wxUSE_NATIVE_STATUSBAR it is not included from wx/statusbr.h
-#include "wx/generic/statusbr.h"
+// if !wxUSE_NATIVE_STATUSBAR, this is already done in common/statbar.cpp
+#if defined(wxUSE_NATIVE_STATUSBAR) && wxUSE_NATIVE_STATUSBAR
+    #include "wx/generic/statusbr.h"
 
 
-IMPLEMENT_DYNAMIC_CLASS(wxStatusBarGeneric, wxWindow)
-
-#if !defined(__WIN32__) || !wxUSE_NATIVE_STATUSBAR
-    IMPLEMENT_DYNAMIC_CLASS(wxStatusBar, wxStatusBarGeneric)
-#endif // Win32 && wxUSE_NATIVE_STATUSBAR
+    IMPLEMENT_DYNAMIC_CLASS(wxStatusBarGeneric, wxWindow)
+#endif // wxUSE_NATIVE_STATUSBAR
 
 BEGIN_EVENT_TABLE(wxStatusBarGeneric, wxWindow)
     EVT_PAINT(wxStatusBarGeneric::OnPaint)
 
 BEGIN_EVENT_TABLE(wxStatusBarGeneric, wxWindow)
     EVT_PAINT(wxStatusBarGeneric::OnPaint)
@@ -64,8 +62,6 @@ wxStatusBarGeneric::~wxStatusBarGeneric()
         SetFont(wxNullFont);
 #   endif // MSW
 
         SetFont(wxNullFont);
 #   endif // MSW
 
-    if ( m_statusWidths )
-        delete[] m_statusWidths;
     if ( m_statusStrings )
         delete[] m_statusStrings;
 }
     if ( m_statusStrings )
         delete[] m_statusStrings;
 }
@@ -93,6 +89,17 @@ bool wxStatusBarGeneric::Create(wxWindow *parent,
 
   SetFont(m_defaultStatusBarFont);
 
 
   SetFont(m_defaultStatusBarFont);
 
+  // Set the height according to the font and the border size
+  wxClientDC dc(this);
+  dc.SetFont(GetFont());
+
+  wxCoord y;
+  dc.GetTextExtent(_T("X"), NULL, &y );
+
+  int height = (int)( (11*y)/10 + 2*GetBorderY());
+
+  SetSize(-1, -1, -1, height);
+
   return success;
 }
 
   return success;
 }
 
@@ -104,12 +111,6 @@ void wxStatusBarGeneric::SetFieldsCount(int number, const int *widths)
 
         delete[] m_statusStrings;
         m_statusStrings = new wxString[number];
 
         delete[] m_statusStrings;
         m_statusStrings = new wxString[number];
-
-#if 0 // VZ: what is this for?
-        int i;
-        for (i = 0; i < number; i++)
-            m_statusStrings[i] = "";
-#endif
     }
 
     SetStatusWidths(number, widths);
     }
 
     SetStatusWidths(number, widths);