Fix for the undocumented holes in spiner sizes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
c9c4689547
commit
b081046a66
@ -212,18 +212,23 @@ wxSize wxControl::DoGetBestSize() const
|
||||
// wxChoice and others.
|
||||
wxSize wxControl::GetBestSpinerSize(const bool is_vertical) const
|
||||
{
|
||||
// take size according to layout
|
||||
wxSize bestSize(GetSystemMetrics(is_vertical ? SM_CXVSCROLL : SM_CXHSCROLL),
|
||||
GetSystemMetrics(is_vertical ? SM_CYVSCROLL : SM_CYHSCROLL));
|
||||
|
||||
// correct size as for undocumented MSW variants cases (WinCE and perhaps others)
|
||||
if (bestSize.x==0)
|
||||
bestSize.x = bestSize.y;
|
||||
if (bestSize.y==0)
|
||||
bestSize.y = bestSize.x;
|
||||
|
||||
// double size according to layout
|
||||
if (is_vertical)
|
||||
{
|
||||
// vertical control
|
||||
return wxSize(GetSystemMetrics(SM_CXVSCROLL),
|
||||
2*GetSystemMetrics(SM_CYVSCROLL));
|
||||
}
|
||||
bestSize.y *= 2;
|
||||
else
|
||||
{
|
||||
// horizontal control
|
||||
return wxSize(2*GetSystemMetrics(SM_CXHSCROLL),
|
||||
GetSystemMetrics(SM_CYHSCROLL));
|
||||
}
|
||||
bestSize.x *= 2;
|
||||
|
||||
return bestSize;
|
||||
}
|
||||
|
||||
/* static */ wxVisualAttributes
|
||||
|
Loading…
Reference in New Issue
Block a user