X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/20b35a6916b9b54af4bbfe4227393c08cd9a2724..00f553943850592fda4607bf8a34d458cf6ab522:/src/common/sizer.cpp diff --git a/src/common/sizer.cpp b/src/common/sizer.cpp index 1d187529ff..0e9587b451 100644 --- a/src/common/sizer.cpp +++ b/src/common/sizer.cpp @@ -25,7 +25,7 @@ #include "wx/utils.h" #include "wx/statbox.h" #include "wx/notebook.h" -#include +#include "wx/listimpl.cpp" //--------------------------------------------------------------------------- @@ -1548,7 +1548,36 @@ static void GetStaticBoxBorders( wxStaticBox *box, // guess the thickness of a wxStaticBox border #ifdef __WXCOCOA__ box->GetBordersForSizer(borderTop,borderOther); -#else // __WXCOCOA__ +#elif defined(__WXMAC__) + + static int extraTop = -1; // Uninitted + static int other = 5; + + if ( extraTop == -1 ) + { + int verMaj, verMin; + (void) ::wxGetOsVersion(&verMaj, &verMin); + + // The minimal border used for the top. Later on the staticbox' + // font height is added to this. + extraTop = 0; + + // Is the Mac OS version OS X Panther or higher? + if ( ((verMaj << 16) + verMin) >= 0x00100030 ) + { + // 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 + box->GetCharHeight(); + *borderOther = other; + +#else #ifdef __WXGTK__ if ( box->GetLabel().IsEmpty() ) *borderTop = 5;