corrected BestSize algorithm
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -494,11 +494,6 @@ wxSize wxRadioBox::DoGetBestSize() const
|
|||||||
maxWidth = -1;
|
maxWidth = -1;
|
||||||
maxHeight = -1;
|
maxHeight = -1;
|
||||||
|
|
||||||
// handle radio box title as well
|
|
||||||
GetTextExtent(GetTitle(), &eachWidth, NULL);
|
|
||||||
eachWidth = (int)(eachWidth + RADIO_SIZE);
|
|
||||||
if (maxWidth < eachWidth) maxWidth = eachWidth;
|
|
||||||
|
|
||||||
for (int i = 0 ; i < m_noItems; i++)
|
for (int i = 0 ; i < m_noItems; i++)
|
||||||
{
|
{
|
||||||
GetTextExtent(GetString(i), &eachWidth, &eachHeight);
|
GetTextExtent(GetString(i), &eachWidth, &eachHeight);
|
||||||
@@ -510,6 +505,13 @@ wxSize wxRadioBox::DoGetBestSize() const
|
|||||||
|
|
||||||
totHeight = GetRowCount() * (maxHeight + charHeight/2) + charHeight * 3/2;
|
totHeight = GetRowCount() * (maxHeight + charHeight/2) + charHeight * 3/2;
|
||||||
totWidth = GetColumnCount() * (maxWidth + charWidth) + charWidth;
|
totWidth = GetColumnCount() * (maxWidth + charWidth) + charWidth;
|
||||||
|
|
||||||
|
// handle radio box title as well
|
||||||
|
GetTextExtent(GetTitle(), &eachWidth, NULL);
|
||||||
|
eachWidth = (int)(eachWidth + RADIO_SIZE) + 3 * charWidth ;
|
||||||
|
if (totWidth < eachWidth)
|
||||||
|
totWidth = eachWidth;
|
||||||
|
|
||||||
return wxSize(totWidth, totHeight);
|
return wxSize(totWidth, totHeight);
|
||||||
}
|
}
|
||||||
//-------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------
|
||||||
|
@@ -494,11 +494,6 @@ wxSize wxRadioBox::DoGetBestSize() const
|
|||||||
maxWidth = -1;
|
maxWidth = -1;
|
||||||
maxHeight = -1;
|
maxHeight = -1;
|
||||||
|
|
||||||
// handle radio box title as well
|
|
||||||
GetTextExtent(GetTitle(), &eachWidth, NULL);
|
|
||||||
eachWidth = (int)(eachWidth + RADIO_SIZE);
|
|
||||||
if (maxWidth < eachWidth) maxWidth = eachWidth;
|
|
||||||
|
|
||||||
for (int i = 0 ; i < m_noItems; i++)
|
for (int i = 0 ; i < m_noItems; i++)
|
||||||
{
|
{
|
||||||
GetTextExtent(GetString(i), &eachWidth, &eachHeight);
|
GetTextExtent(GetString(i), &eachWidth, &eachHeight);
|
||||||
@@ -510,6 +505,13 @@ wxSize wxRadioBox::DoGetBestSize() const
|
|||||||
|
|
||||||
totHeight = GetRowCount() * (maxHeight + charHeight/2) + charHeight * 3/2;
|
totHeight = GetRowCount() * (maxHeight + charHeight/2) + charHeight * 3/2;
|
||||||
totWidth = GetColumnCount() * (maxWidth + charWidth) + charWidth;
|
totWidth = GetColumnCount() * (maxWidth + charWidth) + charWidth;
|
||||||
|
|
||||||
|
// handle radio box title as well
|
||||||
|
GetTextExtent(GetTitle(), &eachWidth, NULL);
|
||||||
|
eachWidth = (int)(eachWidth + RADIO_SIZE) + 3 * charWidth ;
|
||||||
|
if (totWidth < eachWidth)
|
||||||
|
totWidth = eachWidth;
|
||||||
|
|
||||||
return wxSize(totWidth, totHeight);
|
return wxSize(totWidth, totHeight);
|
||||||
}
|
}
|
||||||
//-------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user