X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/39df3acde9a009f9aafe4b218cdfab5bee59724d..09b67c660cadef225cbf8f1986cfe591f8feae8c:/include/wx/datectrl.h diff --git a/include/wx/datectrl.h b/include/wx/datectrl.h index 0d843357b7..7adfbf775e 100644 --- a/include/wx/datectrl.h +++ b/include/wx/datectrl.h @@ -12,11 +12,43 @@ #ifndef _WX_DATECTRL_H_ #define _WX_DATECTRL_H_ +#include "wx/defs.h" + +#if wxUSE_DATEPICKCTRL + +// this is currently defined in wx/msw/setup.h but not for MSW configure builds +// and other ports which only have the generic version anyhow, so provide a +// fallback definition here for them +#ifndef wxUSE_DATEPICKCTRL_GENERIC + #define wxUSE_DATEPICKCTRL_GENERIC 0 +#endif + #include "wx/control.h" // the base class #include "wx/datetime.h" #define wxDatePickerCtrlNameStr _T("datectrl") +// wxDatePickerCtrl styles +enum +{ + // default style on this platform, either wxDP_SPIN or wxDP_DROPDOWN + wxDP_DEFAULT = 0, + + // a spin control-like date picker (not supported in generic version) + wxDP_SPIN = 1, + + // a combobox-like date picker (not supported in mac version) + wxDP_DROPDOWN = 2, + + // always show century in the default date display (otherwise it depends on + // the system date format which may include the century or not) + wxDP_SHOWCENTURY = 4, + + // allow not having any valid date in the control (by default it always has + // some date, today initially if no valid date specified in ctor) + wxDP_ALLOWNONE = 8 +}; + // ---------------------------------------------------------------------------- // wxDatePickerCtrl: allow the user to enter the date // ---------------------------------------------------------------------------- @@ -33,7 +65,7 @@ public: const wxDateTime& dt = wxDefaultDateTime, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = 0, + long style = wxDP_DEFAULT | wxDP_SHOWCENTURY, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxDatePickerCtrlNameStr); */ @@ -49,11 +81,39 @@ public: virtual bool GetRange(wxDateTime *dt1, wxDateTime *dt2) const = 0; }; -#if defined(__WXMSW__) && !defined(__WXUNIVERSAL__) +#if defined(__WXPALMOS__) + #include "wx/palmos/datectrl.h" + + #define wxHAS_NATIVE_DATEPICKCTRL +#elif defined(__WXMSW__) && !defined(__WXUNIVERSAL__) #include "wx/msw/datectrl.h" + + #define wxHAS_NATIVE_DATEPICKCTRL #else #include "wx/generic/datectrl.h" + + class WXDLLIMPEXP_ADV wxDatePickerCtrl : public wxDatePickerCtrlGeneric + { + public: + wxDatePickerCtrl() { } + wxDatePickerCtrl(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) + : wxDatePickerCtrlGeneric(parent, id, date, pos, size, style, validator, name) + { + } + + private: + DECLARE_DYNAMIC_CLASS_NO_COPY(wxDatePickerCtrl) + }; #endif +#endif // wxUSE_DATEPICKCTRL + #endif // _WX_DATECTRL_H_