X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8ecd5de22748b434c085a3c2af8a57fc95607231..1ac76609146a74466b88e53b551e9ea01c5c8801:/src/msw/notebook.cpp diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index 3d4f37f452..8405625fcc 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -450,7 +450,22 @@ bool wxNotebook::SetPageText(size_t nPage, const wxString& strText) tcItem.mask = TCIF_TEXT; tcItem.pszText = (wxChar *)strText.c_str(); - return TabCtrl_SetItem(GetHwnd(), nPage, &tcItem) != 0; + if ( !HasFlag(wxNB_MULTILINE) ) + return TabCtrl_SetItem(GetHwnd(), nPage, &tcItem) != 0; + + // multiline - we need to set new page size if a line is added or removed + int rows = GetRowCount(); + bool ret = TabCtrl_SetItem(GetHwnd(), nPage, &tcItem) != 0; + + if ( ret && rows != GetRowCount() ) + { + const wxRect r = GetPageSize(); + const size_t count = m_pages.Count(); + for ( size_t page = 0; page < count; page++ ) + m_pages[page]->SetSize(r); + } + + return ret; } wxString wxNotebook::GetPageText(size_t nPage) const @@ -829,7 +844,11 @@ void wxNotebook::OnPaint(wxPaintEvent& WXUNUSED(event)) memdc.SelectObject(bmp); // if there is no special brush just use the solid background colour +#if wxUSE_UXTHEME HBRUSH hbr = (HBRUSH)m_hbrBackground; +#else + HBRUSH hbr = 0; +#endif wxBrush brush; if ( !hbr ) {