X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d6f04127fe1b3a9008605b22419af78eba5ae857..8f08b2509bc94079a0a0203ecee862a23f938721:/src/msw/calctrl.cpp diff --git a/src/msw/calctrl.cpp b/src/msw/calctrl.cpp index 4a4c4d9ede..37bd62296f 100644 --- a/src/msw/calctrl.cpp +++ b/src/msw/calctrl.cpp @@ -97,6 +97,8 @@ wxCalendarCtrl::Create(wxWindow *parent, UpdateMarks(); + Connect(wxEVT_LEFT_DOWN, + wxMouseEventHandler(wxCalendarCtrl::MSWOnClick)); Connect(wxEVT_LEFT_DCLICK, wxMouseEventHandler(wxCalendarCtrl::MSWOnDoubleClick)); @@ -328,7 +330,7 @@ void wxCalendarCtrl::UpdateMarks() { MONTHDAYSTATE states[3]; const int nMonths = MonthCal_GetMonthRange(GetHwnd(), GMR_DAYSTATE, NULL); - wxCHECK_RET( nMonths <= WXSIZEOF(states), "unexpected months range" ); + wxCHECK_RET( nMonths <= (int)WXSIZEOF(states), "unexpected months range" ); for ( int i = 0; i < nMonths; i++ ) states[i] = m_marks; @@ -400,4 +402,13 @@ void wxCalendarCtrl::MSWOnDoubleClick(wxMouseEvent& event) event.Skip(); } +void wxCalendarCtrl::MSWOnClick(wxMouseEvent& event) +{ + // for some reason, the control doesn't get focus on its own when the user + // clicks in it + SetFocus(); + + event.Skip(); +} + #endif // wxUSE_CALENDARCTRL