fix off-by-one size of wxCheckListBox item draw rect
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -740,11 +740,8 @@ bool wxListBox::MSWOnDraw(WXDRAWITEMSTRUCT *item)
|
|||||||
wxListBoxItem *pItem = (wxListBoxItem *)m_aItems[pStruct->itemID];
|
wxListBoxItem *pItem = (wxListBoxItem *)m_aItems[pStruct->itemID];
|
||||||
|
|
||||||
wxDCTemp dc((WXHDC)pStruct->hDC);
|
wxDCTemp dc((WXHDC)pStruct->hDC);
|
||||||
wxPoint pt1(pStruct->rcItem.left, pStruct->rcItem.top);
|
|
||||||
wxPoint pt2(pStruct->rcItem.right, pStruct->rcItem.bottom);
|
|
||||||
wxRect rect(pt1, pt2);
|
|
||||||
|
|
||||||
return pItem->OnDrawItem(dc, rect,
|
return pItem->OnDrawItem(dc, wxRectFromRECT(pStruct->rcItem),
|
||||||
(wxOwnerDrawn::wxODAction)pStruct->itemAction,
|
(wxOwnerDrawn::wxODAction)pStruct->itemAction,
|
||||||
(wxOwnerDrawn::wxODStatus)pStruct->itemState);
|
(wxOwnerDrawn::wxODStatus)pStruct->itemState);
|
||||||
}
|
}
|
||||||
|
@@ -379,8 +379,8 @@ bool wxOwnerDrawn::OnDrawItem(wxDC& dc,
|
|||||||
AutoHBRUSH hbr(colBack);
|
AutoHBRUSH hbr(colBack);
|
||||||
SelectInHDC selBrush(hdc, hbr);
|
SelectInHDC selBrush(hdc, hbr);
|
||||||
|
|
||||||
RECT rectFill = { rc.GetLeft(), rc.GetTop(),
|
RECT rectFill;
|
||||||
rc.GetRight() + 1, rc.GetBottom() + 1 };
|
wxCopyRectToRECT(rc, rectFill);
|
||||||
|
|
||||||
if ( (st & wxODSelected) && m_bmpChecked.Ok() && draw_bitmap_edge )
|
if ( (st & wxODSelected) && m_bmpChecked.Ok() && draw_bitmap_edge )
|
||||||
{
|
{
|
||||||
@@ -418,7 +418,7 @@ bool wxOwnerDrawn::OnDrawItem(wxDC& dc,
|
|||||||
(LPARAM)strMenuText.wx_str(),
|
(LPARAM)strMenuText.wx_str(),
|
||||||
strMenuText.length(),
|
strMenuText.length(),
|
||||||
xText,
|
xText,
|
||||||
rc.y + (rc.GetHeight() - sizeRect.cy + 1)/2, // centre vertically
|
rc.y + (rc.height - sizeRect.cy) / 2, // centre vertically
|
||||||
rc.GetWidth() - margin,
|
rc.GetWidth() - margin,
|
||||||
sizeRect.cy,
|
sizeRect.cy,
|
||||||
flags
|
flags
|
||||||
@@ -436,7 +436,7 @@ bool wxOwnerDrawn::OnDrawItem(wxDC& dc,
|
|||||||
::DrawState(hdc, NULL, NULL,
|
::DrawState(hdc, NULL, NULL,
|
||||||
(LPARAM)m_strAccel.wx_str(),
|
(LPARAM)m_strAccel.wx_str(),
|
||||||
m_strAccel.length(),
|
m_strAccel.length(),
|
||||||
rc.GetWidth()-16-accel_width, rc.y+(int) ((rc.GetHeight()-sizeRect.cy)/2.0),
|
rc.width - 16 - accel_width, rc.y + (rc.height - sizeRect.cy) / 2,
|
||||||
0, 0,
|
0, 0,
|
||||||
DST_TEXT |
|
DST_TEXT |
|
||||||
(((st & wxODDisabled) && !(st & wxODSelected)) ? DSS_DISABLED : 0));
|
(((st & wxODDisabled) && !(st & wxODSelected)) ? DSS_DISABLED : 0));
|
||||||
|
Reference in New Issue
Block a user