#include "wx/renderer.h"
#include "wx/msw/private.h"
+#include "wx/msw/dc.h"
// ----------------------------------------------------------------------------
// private functions
wxCheckListBox *m_pParent;
size_t m_nIndex;
- DECLARE_NO_COPY_CLASS(wxCheckListBoxItem)
+ wxDECLARE_NO_COPY_CLASS(wxCheckListBoxItem);
};
wxCheckListBoxItem::wxCheckListBoxItem(wxCheckListBox *pParent, size_t nIndex)
if ( !wxOwnerDrawn::OnDrawItem(dc, rc, act, stat) )
return false;
+ wxMSWDCImpl *impl = (wxMSWDCImpl*) dc.GetImpl();
// now draw the check mark part
- HDC hdc = GetHdcOf(dc);
+ HDC hdc = GetHdcOf(*impl);
int nBmpWidth = ::GetSystemMetrics(SM_CXMENUCHECK),
nBmpHeight = ::GetSystemMetrics(SM_CYMENUCHECK);
ImageList_Destroy(himl);
+ if (stat & wxODHasFocus)
+ wxRendererNative::Get().DrawFocusRect(m_pParent, dc, rc);
+
return true;
}
bool wxCheckListBox::IsChecked(unsigned int uiIndex) const
{
- wxCHECK_MSG( IsValid(uiIndex), false, _T("bad wxCheckListBox index") );
+ wxCHECK_MSG( IsValid(uiIndex), false, wxT("bad wxCheckListBox index") );
return GetItem(uiIndex)->IsChecked();
}
void wxCheckListBox::Check(unsigned int uiIndex, bool bCheck)
{
- wxCHECK_RET( IsValid(uiIndex), _T("bad wxCheckListBox index") );
+ wxCHECK_RET( IsValid(uiIndex), wxT("bad wxCheckListBox index") );
GetItem(uiIndex)->Check(bCheck);
}
wxCheckListBoxItem *item = GetItem(selections[i]);
if ( !item )
{
- wxFAIL_MSG( _T("no wxCheckListBoxItem?") );
+ wxFAIL_MSG( wxT("no wxCheckListBoxItem?") );
continue;
}
break;
default:
- wxFAIL_MSG( _T("what should this key do?") );
+ wxFAIL_MSG( wxT("what should this key do?") );
}
// we should send an event as this has been done by the user and
}
}
-int wxCheckListBox::DoHitTestItem(wxCoord x, wxCoord y) const
-{
- int nItem = (int)::SendMessage
- (
- (HWND)GetHWND(),
- LB_ITEMFROMPOINT,
- 0,
- MAKELPARAM(x, y)
- );
-
- return nItem >= (int)m_noItems ? wxNOT_FOUND : nItem;
-}
-
-
wxSize wxCheckListBox::DoGetBestSize() const
{
wxSize best = wxListBox::DoGetBestSize();
return best;
}
-#endif
+#endif // wxUSE_CHECKLISTBOX