void SetDate();
void Today();
-
+
private:
wxCalendarCtrl *m_calendar;
wxStaticText *m_date;
#if wxUSE_DATEPICKCTRL
MyDialog::MyDialog(wxWindow *parent, const wxDateTime& dt, int dtpStyle)
- : wxDialog(parent, -1, wxString(_T("Calendar: Choose a date")))
+ : wxDialog(parent, wxID_ANY, wxString(_T("Calendar: Choose a date")))
{
wxStdDialogButtonSizer *sizerBtns = new wxStdDialogButtonSizer;
sizerBtns->AddButton(new wxButton(this, wxID_OK));
sizerBtns->Finalise();
wxSizer *sizerText = new wxBoxSizer(wxHORIZONTAL);
- sizerText->Add(new wxStaticText(this, -1, _T("Date in ISO format: ")),
+ sizerText->Add(new wxStaticText(this, wxID_ANY, _T("Date in ISO format: ")),
wxSizerFlags().Border().Align(wxALIGN_CENTRE_VERTICAL));
- m_text = new wxTextCtrl(this, -1);
+ m_text = new wxTextCtrl(this, wxID_ANY);
sizerText->Add(m_text, wxSizerFlags().
Expand().Border().Align(wxALIGN_CENTRE_VERTICAL));
wxSizer *sizerTop = new wxBoxSizer(wxVERTICAL);
sizerTop->Add(new wxStaticText
(
- this, -1,
+ this, wxID_ANY,
_T("Enter your birthday date (not before 20th century):")
),
wxSizerFlags().Border());
#if wxUSE_DATEPICKCTRL_GENERIC
wxFrame *frame = (wxFrame *)wxGetTopLevelParent(parent);
if ( frame && frame->GetMenuBar()->IsChecked(Calendar_DatePicker_Generic) )
- m_datePicker = new wxDatePickerCtrlGeneric(this, -1, dt,
+ m_datePicker = new wxDatePickerCtrlGeneric(this, wxID_ANY, dt,
wxDefaultPosition,
wxDefaultSize,
dtpStyle);
else
#endif // wxUSE_DATEPICKCTRL_GENERIC
- m_datePicker = new wxDatePickerCtrl(this, -1, dt,
+ m_datePicker = new wxDatePickerCtrl(this, wxID_ANY, dt,
wxDefaultPosition, wxDefaultSize,
dtpStyle);
m_datePicker->SetRange(wxDateTime(1, wxDateTime::Jan, 1900),
void MyDialog::OnDateChange(wxDateEvent& event)
{
const wxDateTime dt = event.GetDate();
- m_text->SetValue(dt.IsValid()? dt.FormatISODate() : wxString());
+ if(dt.IsValid())
+ m_text->SetValue(dt.FormatISODate());
+ else
+ m_text->SetValue(wxEmptyString);
}
#endif // wxUSE_DATEPICKCTRL
if (down)
{
wxDateTime dt;
- if (!m_txt->GetValue().IsEmpty())
+ if (!m_txt->GetValue().empty())
dt.ParseFormat(m_txt->GetValue(), m_format);
if (dt.IsValid())
dt = m_currentDate;
}
- m_txt->SetValue(dt.IsValid()? dt.Format(m_format) : wxString());
+ if(dt.IsValid())
+ m_txt->SetValue(dt.Format(m_format));
+ else
+ m_txt->SetValue(wxEmptyString);
// notify that we had to change the date after validation
if ( (dt.IsValid() && m_currentDate != dt) ||
// We'll create an additional event if the date is valid.
// If the date isn't valid, the user's probably in the middle of typing
- wxString txt=m_txt->GetValue();
+ wxString txt = m_txt->GetValue();
wxDateTime dt;
- if (!txt.IsEmpty())
+ if (!txt.empty())
{
dt.ParseFormat(txt, m_format);
if (!dt.IsValid())