From: Robert Roebling Date: Fri, 30 Jan 2009 20:08:14 +0000 (+0000) Subject: Don't use a cached best size if the window has a sizer X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/26f7724c4b03d6d75f8aa80d6cd2b5099ac32ea1 Don't use a cached best size if the window has a sizer git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/window.h b/include/wx/window.h index 9ae3e47848..06d52fc835 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -374,12 +374,8 @@ public: // get the size best suited for the window (in fact, minimal // acceptable size using which it will still look "nice" in // most situations) - wxSize GetBestSize() const - { - if (m_bestSizeCache.IsFullySpecified()) - return m_bestSizeCache; - return DoGetBestSize(); - } + wxSize GetBestSize() const; + void GetBestSize(int *w, int *h) const { wxSize s = GetBestSize(); diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index 5bb116f600..96e14509b3 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -47,6 +47,8 @@ #include "wx/menu.h" #endif //WX_PRECOMP +#include "wx/collpane.h" + #if wxUSE_DRAG_AND_DROP #include "wx/dnd.h" #endif // wxUSE_DRAG_AND_DROP @@ -720,6 +722,13 @@ wxSize wxWindowBase::GetEffectiveMinSize() const return min; } +wxSize wxWindowBase::GetBestSize() const +{ + if ((!m_windowSizer) && (m_bestSizeCache.IsFullySpecified())) + return m_bestSizeCache; + + return DoGetBestSize(); +} void wxWindowBase::SetMinSize(const wxSize& minSize) {