X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b4f4d3dd610a29a7be3c7a5f165520438d0328bb..69cce151786fff258571659c6c5ef1b50a64ec58:/src/html/htmlcell.cpp diff --git a/src/html/htmlcell.cpp b/src/html/htmlcell.cpp index a7a602f54e..feeabd00c3 100644 --- a/src/html/htmlcell.cpp +++ b/src/html/htmlcell.cpp @@ -356,7 +356,11 @@ IMPLEMENT_ABSTRACT_CLASS(wxHtmlWordCell, wxHtmlCell) wxHtmlWordCell::wxHtmlWordCell(const wxString& word, const wxDC& dc) : wxHtmlCell() { m_Word = word; - dc.GetTextExtent(m_Word, &m_Width, &m_Height, &m_Descent); + wxCoord w, h, d; + dc.GetTextExtent(m_Word, &w, &h, &d); + m_Width = w; + m_Height = h; + m_Descent = d; SetCanLiveOnPagebreak(false); m_allowLinebreak = true; } @@ -1497,8 +1501,15 @@ void wxHtmlWidgetCell::Draw(wxDC& WXUNUSED(dc), c = c->GetParent(); } - ((wxScrolledWindow*)(m_Wnd->GetParent()))->GetViewStart(&stx, &sty); - m_Wnd->SetSize(absx - wxHTML_SCROLL_STEP * stx, absy - wxHTML_SCROLL_STEP * sty, m_Width, m_Height); + wxScrolledWindow *scrolwin = + wxDynamicCast(m_Wnd->GetParent(), wxScrolledWindow); + wxCHECK_RET( scrolwin, + _T("widget cells can only be placed in wxHtmlWindow") ); + + scrolwin->GetViewStart(&stx, &sty); + m_Wnd->SetSize(absx - wxHTML_SCROLL_STEP * stx, + absy - wxHTML_SCROLL_STEP * sty, + m_Width, m_Height); }