]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/statbox.cpp
fix a few hundreds of harmless unused parameters warnings and a couple of real bugs...
[wxWidgets.git] / src / mac / carbon / statbox.cpp
index 2bff927aae4d88f95598f38b48f97015316a09fe..9080cab4f11b910c7994c43c9d559ef40d156be7 100644 (file)
 
 IMPLEMENT_DYNAMIC_CLASS(wxStaticBox, wxControl)
 
-/*
- * Static box
- */
-
-bool wxStaticBox::Create(wxWindow *parent, wxWindowID id,
-           const wxString& label,
-           const wxPoint& pos,
-           const wxSize& size,
-           long style,
-           const wxString& name)
+
+bool wxStaticBox::Create( wxWindow *parent,
+    wxWindowID id,
+    const wxString& label,
+    const wxPoint& pos,
+    const wxSize& size,
+    long style,
+    const wxString& name )
 {
-    m_macIsUserPane = FALSE ;
+    m_macIsUserPane = false;
 
-    if ( !wxControl::Create(parent, id, pos, size,
-                            style, wxDefaultValidator, name) )
+    if ( !wxControl::Create( parent, id, pos, size, style, wxDefaultValidator, name ) )
         return false;
 
-    m_label = label ;
+    m_labelOrig = m_label = label;
 
-    Rect bounds = wxMacGetBoundsForControl( this , pos , size ) ;
+    Rect bounds = wxMacGetBoundsForControl( this, pos, size );
 
-    m_peer = new wxMacControl(this) ;
-    verify_noerr(CreateGroupBoxControl(MAC_WXHWND(parent->MacGetTopLevelWindowRef()),&bounds, CFSTR("") ,
-        true /*primary*/ , m_peer->GetControlRefAddr() ) ) ;
+    m_peer = new wxMacControl( this );
+    OSStatus err = CreateGroupBoxControl(
+        MAC_WXHWND(parent->MacGetTopLevelWindowRef()), &bounds, CFSTR(""),
+        true /*primary*/, m_peer->GetControlRefAddr() );
+    verify_noerr( err );
 
-    MacPostControlCreate(pos,size) ;
+    MacPostControlCreate( pos, size );
 
-    return TRUE;
+    return true;
 }
 
 void wxStaticBox::GetBordersForSizer(int *borderTop, int *borderOther) const
@@ -55,11 +54,11 @@ void wxStaticBox::GetBordersForSizer(int *borderTop, int *borderOther) const
 
     if ( extraTop == -1 )
     {
-        // The minimal border used for the top. Later on the staticbox'
-        // font height is added to this.
+        // The minimal border used for the top.
+        // Later on, the staticbox's font height is added to this.
         extraTop = 0;
 
-        if ( UMAGetSystemVersion() >= 0x1030 /*Panther*/ )
+        if ( UMAGetSystemVersion() >= 0x1030 ) // Panther
         {
             // As indicated by the HIG, Panther needs an extra border of 11
             // pixels (otherwise overlapping occurs at the top). The "other"
@@ -67,10 +66,12 @@ void wxStaticBox::GetBordersForSizer(int *borderTop, int *borderOther) const
             extraTop = 11;
             other = 11;
         }
-
     }
 
-    *borderTop = extraTop + GetCharHeight();
+    *borderTop = extraTop;
+    if ( !m_label.empty() )
+        *borderTop += GetCharHeight();
+
     *borderOther = other;
 }