X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6a27c749b302e17446080bb232ef8010b60f3d00..5ccb95f690bd7265b1b86718149a79bb97dcf4d8:/src/palmos/datectrl.cpp?ds=sidebyside diff --git a/src/palmos/datectrl.cpp b/src/palmos/datectrl.cpp index c453c8ac61..ca11de84da 100644 --- a/src/palmos/datectrl.cpp +++ b/src/palmos/datectrl.cpp @@ -36,6 +36,11 @@ #define _WX_DEFINE_DATE_EVENTS_ #include "wx/dateevt.h" +#include +#include + +IMPLEMENT_DYNAMIC_CLASS(wxDatePickerCtrl, wxControl) + // ============================================================================ // implementation // ============================================================================ @@ -59,7 +64,10 @@ bool wxDatePickerCtrl::Create(wxWindow *parent, wxString label; if ( dt.IsValid() ) + { label = dt.FormatDate(); + m_dt = dt; + } if(!wxControl::PalmCreateControl(selectorTriggerCtl, label, pos, size)) return false; @@ -83,16 +91,14 @@ wxSize wxDatePickerCtrl::DoGetBestSize() const void wxDatePickerCtrl::SetValue(const wxDateTime& dt) { if ( dt.IsValid() ) - SetLabel(dt.FormatDate()); - else - SetLabel(wxEmptyString); + m_dt = dt; + + SetLabel(m_dt.FormatDate()); } wxDateTime wxDatePickerCtrl::GetValue() const { - wxDateTime dt; - // TODO - return dt; + return m_dt; } void wxDatePickerCtrl::SetRange(const wxDateTime& dt1, const wxDateTime& dt2) @@ -112,12 +118,18 @@ bool wxDatePickerCtrl::GetRange(wxDateTime *dt1, wxDateTime *dt2) const bool wxDatePickerCtrl::SendClickEvent() { - wxDateTime dt(wxDateTime::Today()); - int16_t month = dt.GetMonth(); - int16_t day = dt.GetDay(); - int16_t year = dt.GetYear(); + int16_t month = (int16_t)m_dt.GetMonth() + 1; + int16_t day = m_dt.GetDay(); + int16_t year = m_dt.GetYear(); - if(SelectDay(selectDayByMonth,&month,&day,&year,_T("Pick date"))); + if(!SelectDay(selectDayByDay,&month,&day,&year,_T("Pick date"))) + return false; + wxDateTime dt(m_dt); + dt.Set((wxDateTime::wxDateTime_t)day, + (wxDateTime::Month)(month-1), + (int)year); + SetValue(dt); + return true; } #endif // wxUSE_DATEPICKCTRL