From ee146bca1b2d76b3e486c66a2d5ad15e44f2cbd0 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 10 Oct 2005 18:15:34 +0000 Subject: [PATCH] added GetWindowSizeForVirtualSize() virtual hook for wxScrolledWindow (cuts down on code duplication in its DoGetBestSize()) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/window.h | 8 ++++++++ src/common/wincmn.cpp | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/include/wx/window.h b/include/wx/window.h index 0e22dfefad..7f516e51e4 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -1279,6 +1279,14 @@ protected: // same size as it would have after a call to Fit() virtual wxSize DoGetBestSize() const; + // called from DoGetBestSize() to convert best virtual size (returned by + // the window sizer) to the best size for the window itself; this is + // overridden at wxScrolledWindow level to clump down virtual size to real + virtual wxSize GetWindowSizeForVirtualSize(const wxSize& size) const + { + return size; + } + // this is the virtual function to be overriden in any derived class which // wants to change how SetSize() or Move() works - it is called by all // versions of these functions in the base class diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index 3f659ed9ac..5e7143c74a 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -579,7 +579,7 @@ wxSize wxWindowBase::DoGetBestSize() const if ( m_windowSizer ) { - best = m_windowSizer->GetMinSize(); + best = GetWindowSizeForVirtualSize(m_windowSizer->GetMinSize()); } #if wxUSE_CONSTRAINTS else if ( m_constraints ) -- 2.45.2