set min size to initial size when it is explicitly given
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
929bd5fd5f
commit
17c48da8ee
@ -598,21 +598,27 @@ void wxWindowBase::SetBestSize(const wxSize& size)
|
||||
{
|
||||
// the size only needs to be changed if the current size is incomplete,
|
||||
// i.e. one of the components was specified as default -- so if both
|
||||
// were given, simply don't do anything
|
||||
// were given, simply don't do anything and in particular don't call
|
||||
// potentially expensive DoGetBestSize()
|
||||
wxSize sizeBest;
|
||||
if ( size.x == -1 || size.y == -1 )
|
||||
{
|
||||
wxSize sizeBest = DoGetBestSize();
|
||||
sizeBest = DoGetBestSize();
|
||||
if ( size.x != -1 )
|
||||
sizeBest.x = size.x;
|
||||
if ( size.y != -1 )
|
||||
sizeBest.y = size.y;
|
||||
|
||||
SetSize(sizeBest);
|
||||
|
||||
// don't shrink the control below its best size
|
||||
m_minWidth = sizeBest.x;
|
||||
m_minHeight = sizeBest.y;
|
||||
}
|
||||
else // have explicit size
|
||||
{
|
||||
sizeBest = size;
|
||||
}
|
||||
|
||||
// don't shrink the control below its best size
|
||||
m_minWidth = sizeBest.x;
|
||||
m_minHeight = sizeBest.y;
|
||||
}
|
||||
|
||||
// by default the origin is not shifted
|
||||
|
Loading…
Reference in New Issue
Block a user