X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/67339f7d9ddfa94e314b71d62b2fed728df334e5..e340b786a8830d79beac196f452f1380143e5df7:/src/generic/htmllbox.cpp?ds=sidebyside diff --git a/src/generic/htmllbox.cpp b/src/generic/htmllbox.cpp index c4256b2dea..796b5070c3 100644 --- a/src/generic/htmllbox.cpp +++ b/src/generic/htmllbox.cpp @@ -225,7 +225,6 @@ void wxHtmlListBox::Init() m_htmlParser = NULL; m_htmlRendStyle = new wxHtmlListBoxStyle(*this); m_cache = new wxHtmlListBoxCache; - m_fontEncoding = wxFONTENCODING_ISO8859_1; } bool wxHtmlListBox::Create(wxWindow *parent, @@ -295,7 +294,8 @@ void wxHtmlListBox::CacheItem(size_t n) const m_htmlParser->SetDC(new wxClientDC(self)); m_htmlParser->SetFS(&self->m_filesystem); #if !wxUSE_UNICODE - m_htmlParser->SetInputEncoding(m_fontEncoding); + if (GetFont().Ok()) + m_htmlParser->SetInputEncoding(GetFont().GetEncoding()); #endif // use system's default GUI font by default: m_htmlParser->SetStandardFonts(); @@ -323,18 +323,18 @@ void wxHtmlListBox::OnSize(wxSizeEvent& event) event.Skip(); } -void wxHtmlListBox::RefreshLine(size_t line) +void wxHtmlListBox::RefreshRow(size_t line) { m_cache->InvalidateRange(line, line); - wxVListBox::RefreshLine(line); + wxVListBox::RefreshRow(line); } -void wxHtmlListBox::RefreshLines(size_t from, size_t to) +void wxHtmlListBox::RefreshRows(size_t from, size_t to) { m_cache->InvalidateRange(from, to); - wxVListBox::RefreshLines(from, to); + wxVListBox::RefreshRows(from, to); } void wxHtmlListBox::RefreshAll() @@ -365,17 +365,6 @@ void wxHtmlListBox::OnDrawItem(wxDC& dc, const wxRect& rect, size_t n) const wxHtmlRenderingInfo htmlRendInfo; - // draw the selected cell in selected state - if ( IsSelected(n) ) - { - wxHtmlSelection htmlSel; - htmlSel.Set(wxPoint(0,0), cell, wxPoint(INT_MAX, INT_MAX), cell); - htmlRendInfo.SetSelection(&htmlSel); - if ( m_htmlRendStyle ) - htmlRendInfo.SetStyle(m_htmlRendStyle); - htmlRendInfo.GetState().SetSelectionState(wxHTML_SEL_IN); - } - // note that we can't stop drawing exactly at the window boundary as then // even the visible cells part could be not drawn, so always draw the // entire cell @@ -469,13 +458,13 @@ wxPoint wxHtmlListBox::GetRootCellCoords(size_t n) const { wxPoint pos(CELL_BORDER, CELL_BORDER); pos += GetMargins(); - pos.y += GetLinesHeight(GetFirstVisibleLine(), n); + pos.y += GetRowsHeight(GetVisibleBegin(), n); return pos; } bool wxHtmlListBox::PhysicalCoordsToCell(wxPoint& pos, wxHtmlCell*& cell) const { - int n = HitTest(pos); + int n = VirtualHitTest(pos.y); if ( n == wxNOT_FOUND ) return false; @@ -570,79 +559,82 @@ bool wxSimpleHtmlListBox::Create(wxWindow *parent, wxWindowID id, if (!wxHtmlListBox::Create(parent, id, pos, size, style, name)) return false; +#if wxUSE_VALIDATORS SetValidator(validator); - for (int i=0; i