Applied patch [ 650511 ] wxCalendarCtrl - year does not change

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2003-06-01 16:46:49 +00:00
parent 920b9675d9
commit 605dfd9173
3 changed files with 47 additions and 7 deletions

View File

@@ -78,6 +78,9 @@ public:
void HighlightSpecial(bool on);
void SetDate();
void Today();
private:
wxCalendarCtrl *m_calendar;
wxStaticText *m_date;
@@ -106,6 +109,9 @@ public:
void OnCalSeqMonth(wxCommandEvent& event);
void OnCalShowSurroundingWeeks(wxCommandEvent& event);
void OnSetDate(wxCommandEvent& event);
void OnToday(wxCommandEvent& event);
void OnAllowYearUpdate(wxUpdateUIEvent& event);
private:
@@ -132,6 +138,8 @@ enum
Calendar_Cal_Year,
Calendar_Cal_SeqMonth,
Calendar_Cal_SurroundWeeks,
Calendar_Cal_SetDate,
Calendar_Cal_Today,
Calendar_CalCtrl = 1000
};
@@ -156,6 +164,10 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_MENU(Calendar_Cal_SeqMonth, MyFrame::OnCalSeqMonth)
EVT_MENU(Calendar_Cal_SurroundWeeks, MyFrame::OnCalShowSurroundingWeeks)
EVT_MENU(Calendar_Cal_SetDate, MyFrame::OnSetDate)
EVT_MENU(Calendar_Cal_Today, MyFrame::OnToday)
EVT_UPDATE_UI(Calendar_Cal_Year, MyFrame::OnAllowYearUpdate)
END_EVENT_TABLE()
@@ -238,6 +250,9 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
menuCal->Append(Calendar_Cal_Year, _T("&Year can be changed\tCtrl-Y"),
_T("Allow changing the year in the calendar"),
TRUE);
menuCal->AppendSeparator();
menuCal->Append(Calendar_Cal_SetDate, "SetDate()", "Set date to 2005-12-24.");
menuCal->Append(Calendar_Cal_Today, "Today()", "Set the current date.");
// now append the freshly created menu to the menu bar...
wxMenuBar *menuBar = new wxMenuBar;
@@ -325,6 +340,16 @@ void MyFrame::OnAllowYearUpdate(wxUpdateUIEvent& event)
event.Enable( GetMenuBar()->IsChecked(Calendar_Cal_Month));
}
void MyFrame::OnSetDate(wxCommandEvent &event)
{
m_panel->SetDate();
}
void MyFrame::OnToday(wxCommandEvent &event)
{
m_panel->Today();
}
// ----------------------------------------------------------------------------
// MyPanel
// ----------------------------------------------------------------------------
@@ -428,3 +453,14 @@ void MyPanel::HighlightSpecial(bool on)
m_calendar->Refresh();
}
void MyPanel::SetDate()
{
wxDateTime date(24, wxDateTime::Dec, 2005, 23, 59, 59);
m_calendar->SetDate(date);
}
void MyPanel::Today()
{
m_calendar->SetDate(wxDateTime::Today());
}