diff --git a/src/msw/checklst.cpp b/src/msw/checklst.cpp index 98933f0fe0..5fd1765fc5 100644 --- a/src/msw/checklst.cpp +++ b/src/msw/checklst.cpp @@ -232,6 +232,13 @@ bool wxCheckListBoxItem::OnDrawItem(wxDC& dc, const wxRect& rc, SelectInHDC selBrush2(hdc, ::GetStockObject(NULL_BRUSH)); Rectangle(hdc, x, y, x + nCheckWidth, y + nCheckHeight); + if (stat & wxODHasFocus) + { + RECT rect; + wxCopyRectToRECT(rc, rect); + DrawFocusRect(hdc, &rect); + } + return true; } diff --git a/src/msw/ownerdrw.cpp b/src/msw/ownerdrw.cpp index 36967d809e..23fec80468 100644 --- a/src/msw/ownerdrw.cpp +++ b/src/msw/ownerdrw.cpp @@ -262,14 +262,9 @@ bool wxOwnerDrawn::OnMeasureItem(size_t *pwidth, size_t *pheight) // draw the item bool wxOwnerDrawn::OnDrawItem(wxDC& dc, const wxRect& rc, - wxODAction act, + wxODAction, wxODStatus st) { - // we do nothing on focus change - if ( act == wxODFocusChanged ) - return true; - - // this flag determines whether or not an edge will // be drawn around the bitmap. In most "windows classic" // applications, a 1-pixel highlight edge is drawn around