]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/statbox.cpp
make sure Raise is also activating the window
[wxWidgets.git] / src / osx / carbon / statbox.cpp
index 398fc5fcb2fa2e334f52cdac09170651d6d423f3..d999701476806c77049913cb7aa990f06e3e5c63 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        statbox.cpp
+// Name:        src/osx/carbon/statbox.cpp
 // Purpose:     wxStaticBox
 // Author:      Stefan Csomor
 // Modified by:
 #if wxUSE_STATBOX
 
 #include "wx/statbox.h"
-#include "wx/mac/uma.h"
-
-IMPLEMENT_DYNAMIC_CLASS(wxStaticBox, wxControl)
-
-
-bool wxStaticBox::Create( wxWindow *parent,
-    wxWindowID id,
-    const wxString& label,
-    const wxPoint& pos,
-    const wxSize& size,
-    long style,
-    const wxString& name )
+#include "wx/osx/private.h"
+
+wxWidgetImplType* wxWidgetImpl::CreateGroupBox( wxWindowMac* wxpeer,
+                                    wxWindowMac* parent,
+                                    wxWindowID WXUNUSED(id),
+                                    const wxString& WXUNUSED(label),
+                                    const wxPoint& pos,
+                                    const wxSize& size,
+                                    long WXUNUSED(style),
+                                    long WXUNUSED(extraStyle))
 {
-    m_macIsUserPane = false;
-
-    if ( !wxControl::Create( parent, id, pos, size, style, wxDefaultValidator, name ) )
-        return false;
+    Rect bounds = wxMacGetBoundsForControl( wxpeer, pos, size );
 
-    m_labelOrig = m_label = label;
-
-    Rect bounds = wxMacGetBoundsForControl( this, pos, size );
-
-    m_peer = new wxMacControl( this );
+    wxMacControl* peer = new wxMacControl( wxpeer );
     OSStatus err = CreateGroupBoxControl(
         MAC_WXHWND(parent->MacGetTopLevelWindowRef()), &bounds, CFSTR(""),
-        true /*primary*/, m_peer->GetControlRefAddr() );
+        true /*primary*/, peer->GetControlRefAddr() );
     verify_noerr( err );
-
-    MacPostControlCreate( pos, size );
-
-    return true;
+    return peer;
 }
-
-void wxStaticBox::GetBordersForSizer(int *borderTop, int *borderOther) const
-{
-    static int extraTop = -1; // Uninitted
-    static int other = 5;
-
-    if ( extraTop == -1 )
-    {
-        // The minimal border used for the top.
-        // Later on, the staticbox's font height is added to this.
-        extraTop = 0;
-
-        // As indicated by the HIG, Panther needs an extra border of 11
-        // pixels (otherwise overlapping occurs at the top). The "other"
-        // border has to be 11.
-        extraTop = 11;
-        other = 11;
-    }
-
-    *borderTop = extraTop;
-    if ( !m_label.empty() )
-        *borderTop += GetCharHeight();
-
-    *borderOther = other;
-}
-
 #endif // wxUSE_STATBOX