simpler fix for rendering bug fixed in previous revision

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík 2002-12-18 23:32:22 +00:00
parent 75c116ab2c
commit 94bc8b14d4

View File

@ -407,24 +407,9 @@ void wxHtmlContainerCell::Layout(int w)
void wxHtmlContainerCell::Draw(wxDC& dc, int x, int y, int view_y1, int view_y2)
{
int y1 = y + m_PosY;
int y2 = y + m_PosY + m_Height;
// If the container is visible, draw it.
// This calculation checks for:
// (1) the cell is wholly within the view, OR
// (2) the cell overlaps, above the view, OR
// (3) the cell overlaps, below the view, OR
// (4) the cell overlaps, above and below the view.
if ((y1 <= view_y2 && y1 >= view_y1) ||
(y2 <= view_y2 && y2 >= view_y1) ||
(y1 <= view_y2 && y1 >= view_y1) ||
(y1 <= view_y1 && y2 >= view_y2))
// Old calculation, which I believe is wrong (JACS).
// if ((y + m_PosY < view_y2) && (y + m_PosY + m_Height > view_y1))
// container visible, draw it:
if ((y + m_PosY <= view_y2) && (y + m_PosY + m_Height > view_y1))
{
if (m_UseBkColour)
{
wxBrush myb = wxBrush(m_BkColour, wxSOLID);
@ -442,18 +427,12 @@ void wxHtmlContainerCell::Draw(wxDC& dc, int x, int y, int view_y1, int view_y2)
wxPen mypen1(m_BorderColour1, 1, wxSOLID);
wxPen mypen2(m_BorderColour2, 1, wxSOLID);
int subtractMe = 1;
// Check on other platforms whether we should be subtracting
// 1. On wxMSW, we get a notch if we do.
#ifdef __WXMSW__
subtractMe = 0;
#endif
dc.SetPen(mypen1);
dc.DrawLine(x + m_PosX, y + m_PosY, x + m_PosX, y + m_PosY + m_Height - 1);
dc.DrawLine(x + m_PosX, y + m_PosY, x + m_PosX + m_Width - subtractMe, y + m_PosY);
dc.DrawLine(x + m_PosX, y + m_PosY, x + m_PosX + m_Width - 1, y + m_PosY);
dc.SetPen(mypen2);
dc.DrawLine(x + m_PosX + m_Width - 1, y + m_PosY, x + m_PosX + m_Width - 1, y + m_PosY + m_Height - 1);
dc.DrawLine(x + m_PosX, y + m_PosY + m_Height - 1, x + m_PosX + m_Width - subtractMe, y + m_PosY + m_Height - 1);
dc.DrawLine(x + m_PosX, y + m_PosY + m_Height - 1, x + m_PosX + m_Width - 1, y + m_PosY + m_Height - 1);
}
if (m_Cells)