X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4b134bb2ce1cba6a0033bdc553817d45de5b2cf7..333e57d578e9e0fb6555452b5a53698ffd85ee69:/include/wx/generic/datectrl.h diff --git a/include/wx/generic/datectrl.h b/include/wx/generic/datectrl.h index b0d27c63de..6e10829231 100644 --- a/include/wx/generic/datectrl.h +++ b/include/wx/generic/datectrl.h @@ -12,30 +12,40 @@ #ifndef _WX_GENERIC_DATECTRL_H_ #define _WX_GENERIC_DATECTRL_H_ -class WXDLLIMPEXP_ADV wxCalendarDateAttr; -class WXDLLIMPEXP_ADV wxCalendarCtrl; -class WXDLLIMPEXP_ADV wxCalendarEvent; +class WXDLLIMPEXP_FWD_ADV wxCalendarDateAttr; +class WXDLLIMPEXP_FWD_ADV wxCalendarCtrl; +class WXDLLIMPEXP_FWD_ADV wxCalendarEvent; +class WXDLLIMPEXP_FWD_ADV wxComboCtrl; +class WXDLLIMPEXP_FWD_ADV wxCalendarComboPopup; -class WXDLLIMPEXP_ADV wxDatePickerCtrl : public wxDatePickerCtrlBase +class WXDLLIMPEXP_ADV wxDatePickerCtrlGeneric : public wxDatePickerCtrlBase { public: // creating the control - wxDatePickerCtrl() { Init(); } - wxDatePickerCtrl(wxWindow *parent, - wxWindowID id, - const wxDateTime& date = wxDefaultDateTime, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - long style = 0, - const wxString& name = wxDatePickerCtrlNameStr); + wxDatePickerCtrlGeneric() { Init(); } + virtual ~wxDatePickerCtrlGeneric(); + wxDatePickerCtrlGeneric(wxWindow *parent, + wxWindowID id, + const wxDateTime& date = wxDefaultDateTime, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDP_DEFAULT | wxDP_SHOWCENTURY, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxDatePickerCtrlNameStr) + { + Init(); + + (void)Create(parent, id, date, pos, size, style, validator, name); + } bool Create(wxWindow *parent, - wxWindowID id, - const wxDateTime& date, - const wxPoint& pos, - const wxSize& size, - long style, - const wxString& name=wxDatePickerCtrlNameStr); + wxWindowID id, + const wxDateTime& date = wxDefaultDateTime, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDP_DEFAULT | wxDP_SHOWCENTURY, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxDatePickerCtrlNameStr); // wxDatePickerCtrl methods void SetValue(const wxDateTime& date); @@ -48,7 +58,7 @@ public: const wxDateTime& upperdate = wxDefaultDateTime); // extra methods available only in this (generic) implementation - bool SetFormat(const wxChar *fmt); + bool SetFormat(const wxString& fmt); wxCalendarCtrl *GetCalendar() const { return m_cal; } @@ -58,37 +68,23 @@ public: // overridden base class methods virtual bool Destroy(); - virtual bool Enable(bool enable = TRUE); - virtual bool Show(bool show = TRUE); - protected: virtual wxSize DoGetBestSize() const; - virtual void DoMoveWindow(int x, int y, int width, int height); private: - wxDialog *m_dlg; - wxTextCtrl *m_txt; + void Init(); + + void OnText(wxCommandEvent &event); + void OnSize(wxSizeEvent& event); + void OnFocus(wxFocusEvent& event); + wxCalendarCtrl *m_cal; - wxButton *m_btn; - wxString m_format; + wxComboCtrl* m_combo; + wxCalendarComboPopup* m_popup; - bool m_dropped, m_ignoreDrop; - void Init(); - void DropDown(bool down=true); - - void OnText(wxCommandEvent &ev); - void OnEditKey(wxKeyEvent & event); - void OnCalKey(wxKeyEvent & event); - void OnClick(wxCommandEvent &ev); - void OnSelChange(wxCalendarEvent &ev); - void OnSetFocus(wxFocusEvent &ev); - void OnKillFocus(wxFocusEvent &ev); - void OnChildSetFocus(wxChildFocusEvent &ev); - - DECLARE_DYNAMIC_CLASS(wxDatePickerCtrl) DECLARE_EVENT_TABLE() - DECLARE_NO_COPY_CLASS(wxDatePickerCtrl) + DECLARE_NO_COPY_CLASS(wxDatePickerCtrlGeneric) }; #endif // _WX_GENERIC_DATECTRL_H_