X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6a27c749b302e17446080bb232ef8010b60f3d00..3c47c04740b7c456823e0fd31edbdf1e6bfff43b:/src/palmos/datectrl.cpp diff --git a/src/palmos/datectrl.cpp b/src/palmos/datectrl.cpp index c453c8ac61..c030a4c142 100644 --- a/src/palmos/datectrl.cpp +++ b/src/palmos/datectrl.cpp @@ -23,19 +23,25 @@ #pragma hdrstop #endif -#ifndef WX_PRECOMP -#endif - #if wxUSE_DATEPICKCTRL #include "wx/datectrl.h" -#include "wx/app.h" -#include "wx/intl.h" + +#ifndef WX_PRECOMP + #include "wx/intl.h" + #include "wx/app.h" +#endif + #include "wx/dynlib.h" #define _WX_DEFINE_DATE_EVENTS_ #include "wx/dateevt.h" +#include +#include + +IMPLEMENT_DYNAMIC_CLASS(wxDatePickerCtrl, wxControl) + // ============================================================================ // implementation // ============================================================================ @@ -59,7 +65,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 +92,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,13 +119,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 -