#include "wx/stattext.h"
#endif //WX_PRECOMP
+// Can only use wxSpinEvent if this is enabled
+#if wxUSE_SPINBTN
+
#include "wx/calctrl.h"
#define DEBUG_PAINT 0
EVT_LEFT_DOWN(wxCalendarCtrl::OnClick)
EVT_LEFT_DCLICK(wxCalendarCtrl::OnDClick)
-
- EVT_CALENDAR_MONTH(-1, wxCalendarCtrl::OnCalMonthChange)
- EVT_CALENDAR_YEAR(-1, wxCalendarCtrl::OnCalMonthChange)
END_EVENT_TABLE()
BEGIN_EVENT_TABLE(wxMonthComboBox, wxComboBox)
wxControl *wxCalendarCtrl::GetMonthControl() const
{
- return AllowMonthChange() ? m_comboMonth : m_staticMonth;
+ return AllowMonthChange() ? (wxControl *)m_comboMonth : (wxControl *)m_staticMonth;
}
wxControl *wxCalendarCtrl::GetYearControl() const
{
- return AllowYearChange() ? m_spinYear : m_staticYear;
+ return AllowYearChange() ? (wxControl *)m_spinYear : (wxControl *)m_staticYear;
}
void wxCalendarCtrl::EnableYearChange(bool enable)
m_spinYear->SetValue(m_date.Format(_T("%Y")));
}
+ // as the month changed, holidays did too
+ SetHolidayAttrs();
+
// update the calendar
Refresh();
}
tm.mday = wxDateTime::GetNumberOfDays(mon, tm.year);
}
- SetDate(wxDateTime(tm.mday, mon, tm.year));
-
- GenerateEvents(wxEVT_CALENDAR_MONTH_CHANGED, wxEVT_CALENDAR_SEL_CHANGED);
+ SetDateAndNotify(wxDateTime(tm.mday, mon, tm.year));
}
void wxCalendarCtrl::OnYearChange(wxSpinEvent& event)
tm.mday = wxDateTime::GetNumberOfDays(tm.mon, year);
}
- SetDate(wxDateTime(tm.mday, tm.mon, year));
-
- GenerateEvents(wxEVT_CALENDAR_YEAR_CHANGED, wxEVT_CALENDAR_SEL_CHANGED);
+ SetDateAndNotify(wxDateTime(tm.mday, tm.mon, year));
}
// ----------------------------------------------------------------------------
// holidays handling
// ----------------------------------------------------------------------------
-void wxCalendarCtrl::OnCalMonthChange(wxCalendarEvent& event)
-{
- SetHolidayAttrs();
-
- event.Skip();
-}
-
void wxCalendarCtrl::EnableHolidayDisplay(bool display)
{
long style = GetWindowStyle();
{
m_date = cal->GetDate();
}
+
+#endif // wxUSE_SPINBTN
+