X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1d5c2a8eb521f99044a04ee5aa7be4a5619cb918..d2c7015bf07982c3b9c3e8ca62b326e589f95e46:/src/univ/notebook.cpp diff --git a/src/univ/notebook.cpp b/src/univ/notebook.cpp index 17d7aefce0..4c19121069 100644 --- a/src/univ/notebook.cpp +++ b/src/univ/notebook.cpp @@ -255,7 +255,7 @@ int wxNotebook::SetSelection(int nPage) m_pages[m_sel]->Show(); } - return m_sel; + return selOld; } void wxNotebook::ChangePage(int nPage) @@ -382,7 +382,11 @@ wxNotebookPage *wxNotebook::DoRemovePage(int nPage) m_images.RemoveAt(nPage); // the spin button might not be needed any more - if ( HasSpinBtn() ) + // 2002-08-12 'if' commented out by JACS on behalf + // of Hans Van Leemputten who + // points out that UpdateSpinBtn should always be called, + // to ensure m_lastVisible is up to date. + // if ( HasSpinBtn() ) { UpdateSpinBtn(); } @@ -458,7 +462,9 @@ void wxNotebook::DoDrawTab(wxDC& dc, const wxRect& rect, size_t n) { int image = m_images[n]; -#ifdef __WXMSW__ // FIXME + // Not needed now that wxGenericImageList is being + // used for wxUniversal under MSW +#if 0 // def __WXMSW__ // FIXME int w, h; m_imageList->GetSize(n, w, h); bmp.Create(w, h); @@ -466,6 +472,7 @@ void wxNotebook::DoDrawTab(wxDC& dc, const wxRect& rect, size_t n) dc.SelectObject(bmp); dc.SetBackground(wxBrush(GetBackgroundColour(), wxSOLID)); m_imageList->Draw(image, dc, 0, 0, wxIMAGELIST_DRAW_NORMAL, TRUE); + dc.SelectObject(wxNullBitmap); #else bmp = *m_imageList->GetBitmap(image); #endif @@ -1253,9 +1260,14 @@ void wxNotebook::DoSetSize(int x, int y, int width, int height, int sizeFlags) { - wxControl::DoSetSize(x, y, width, height, sizeFlags); + wxSize old_client_size = GetClientSize(); - Relayout(); + wxControl::DoSetSize(x, y, width, height, sizeFlags); + + wxSize new_client_size = GetClientSize(); + + if (old_client_size != new_client_size) + Relayout(); } // ----------------------------------------------------------------------------