]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/wizard.cpp
allow passing literal strings and results of c_str() to SetXXXLabels() methods too
[wxWidgets.git] / src / generic / wizard.cpp
index 74c26780b8c9c1862e9ea489ea999bb0aa8c2fdf..03b398e03f21d0d3ed978032d4725eb220b58186 100644 (file)
@@ -558,10 +558,6 @@ bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward)
     }
 
 
-    // we'll use this to decide whether we have to change the label of this
-    // button or not (initially the label is "Next")
-    bool btnLabelWasNext = true;
-
     // remember the old bitmap (if any) to compare with the new one later
     wxBitmap bmpPrev;
 
@@ -580,8 +576,6 @@ bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward)
 
         m_page->Hide();
 
-        btnLabelWasNext = HasNextPage(m_page);
-
         bmpPrev = m_page->GetBitmap();
 
         if ( !m_usingSizer )
@@ -651,15 +645,10 @@ bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward)
     // and update the buttons state
     m_btnPrev->Enable(HasPrevPage(m_page));
 
-    bool hasNext = HasNextPage(m_page);
-    if ( btnLabelWasNext != hasNext )
-    {
-        if ( hasNext )
-            m_btnNext->SetLabel(_("&Next >"));
-        else
-            m_btnNext->SetLabel(_("&Finish"));
-    }
-    // nothing to do: the label was already correct
+    const bool hasNext = HasNextPage(m_page);
+    const wxString label = hasNext ? _("&Next >") : _("&Finish");
+    if ( label != m_btnNext->GetLabel() )
+        m_btnNext->SetLabel(label);
 
     m_btnNext->SetDefault();
 
@@ -945,6 +934,9 @@ bool wxWizard::DoLayoutAdaptation()
 
     wxStandardDialogLayoutAdapter::DoFitWithScrolling(this, windows);
 
+    // Size event doesn't get sent soon enough on wxGTK
+    DoLayout();
+    
     SetLayoutAdaptationDone(true);
 
     return true;
@@ -958,6 +950,8 @@ bool wxWizard::ResizeBitmap(wxBitmap& bmp)
     if (bmp.Ok())
     {
         wxSize pageSize = m_sizerPage->GetSize();
+        if (pageSize == wxSize(0,0))
+            pageSize = GetPageSize();
         int bitmapWidth = wxMax(bmp.GetWidth(), GetMinimumBitmapWidth());
         int bitmapHeight = pageSize.y;