]> git.saurik.com Git - wxWidgets.git/commitdiff
corrected BestSize algorithm
authorStefan Csomor <csomor@advancedconcepts.ch>
Tue, 13 Aug 2002 09:51:13 +0000 (09:51 +0000)
committerStefan Csomor <csomor@advancedconcepts.ch>
Tue, 13 Aug 2002 09:51:13 +0000 (09:51 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/mac/carbon/radiobox.cpp
src/mac/radiobox.cpp

index 98e7172f9a518b185b88027dca4f94d16d8a790f..cc3ad3ba130cc869c1702a120f6870437e8c562d 100644 (file)
@@ -494,11 +494,6 @@ wxSize wxRadioBox::DoGetBestSize() const
    maxWidth = -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++)
    {
         GetTextExtent(GetString(i), &eachWidth, &eachHeight);
@@ -510,6 +505,13 @@ wxSize wxRadioBox::DoGetBestSize() const
 
     totHeight = GetRowCount() * (maxHeight + charHeight/2) + charHeight * 3/2;
     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);
 }
 //-------------------------------------------------------------------------------------
index 98e7172f9a518b185b88027dca4f94d16d8a790f..cc3ad3ba130cc869c1702a120f6870437e8c562d 100644 (file)
@@ -494,11 +494,6 @@ wxSize wxRadioBox::DoGetBestSize() const
    maxWidth = -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++)
    {
         GetTextExtent(GetString(i), &eachWidth, &eachHeight);
@@ -510,6 +505,13 @@ wxSize wxRadioBox::DoGetBestSize() const
 
     totHeight = GetRowCount() * (maxHeight + charHeight/2) + charHeight * 3/2;
     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);
 }
 //-------------------------------------------------------------------------------------