X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77670008aae73f8b6c1c67e07c1887b22c7df70f..54742e34262c249c6aa17028ff57bd993faea82f:/include/wx/generic/datectrl.h diff --git a/include/wx/generic/datectrl.h b/include/wx/generic/datectrl.h index 701fce4ca7..75172a2d44 100644 --- a/include/wx/generic/datectrl.h +++ b/include/wx/generic/datectrl.h @@ -12,29 +12,29 @@ #ifndef _WX_GENERIC_DATECTRL_H_ #define _WX_GENERIC_DATECTRL_H_ -class WXDLLIMPEXP_CORE wxButton; -class WXDLLIMPEXP_ADV wxCalendarDateAttr; -class WXDLLIMPEXP_ADV wxCalendarCtrl; -class WXDLLIMPEXP_ADV wxCalendarEvent; -class WXDLLIMPEXP_CORE wxPopupWindow; -class WXDLLIMPEXP_CORE wxTextCtrl; +#include "wx/calctrl.h" +#include "wx/combo.h" + +class WXDLLIMPEXP_FWD_ADV wxCalendarComboPopup; class WXDLLIMPEXP_ADV wxDatePickerCtrlGeneric : public wxDatePickerCtrlBase { public: // creating the control 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, name); + (void)Create(parent, id, date, pos, size, style, validator, name); } bool Create(wxWindow *parent, @@ -43,6 +43,7 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDP_DEFAULT | wxDP_SHOWCENTURY, + const wxValidator& validator = wxDefaultValidator, const wxString& name = wxDatePickerCtrlNameStr); // wxDatePickerCtrl methods @@ -56,8 +57,8 @@ public: const wxDateTime& upperdate = wxDefaultDateTime); // extra methods available only in this (generic) implementation - bool SetFormat(const wxChar *fmt); - wxCalendarCtrl *GetCalendar() const { return m_cal; } + bool SetFormat(const wxString& fmt); + wxCalendarCtrl *GetCalendar() const; // implementation only from now on @@ -66,36 +67,18 @@ 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: 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); - - - wxPopupWindow *m_popup; - wxTextCtrl *m_txt; - wxCalendarCtrl *m_cal; - wxButton *m_btn; - wxString m_format; - bool m_dropped, - m_ignoreDrop; + void OnText(wxCommandEvent &event); + void OnSize(wxSizeEvent& event); + void OnFocus(wxFocusEvent& event); + wxComboCtrl* m_combo; + wxCalendarComboPopup* m_popup; DECLARE_EVENT_TABLE() DECLARE_NO_COPY_CLASS(wxDatePickerCtrlGeneric)