]> git.saurik.com Git - wxWidgets.git/commitdiff
added wxDP_SPIN/DROPDOWN styles (only Win32 native version implements the former)
authorVadim Zeitlin <vadim@wxwidgets.org>
Wed, 19 Jan 2005 19:31:40 +0000 (19:31 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Wed, 19 Jan 2005 19:31:40 +0000 (19:31 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/datectrl.tex
include/wx/datectrl.h
src/generic/datectlg.cpp
src/msw/datectrl.cpp

index 52d923a1ec08855bbff9e01dc90265b511e30f83..73f6482eabc6a11f0b347c871eb7b73754926c55 100644 (file)
@@ -30,6 +30,19 @@ the platform.
 
 (only available if \texttt{wxUSE\_DATEPICKCTRL} is set to $1$)
 
+\wxheading{Window styles}
+
+\twocolwidtha{5cm}%
+\begin{twocollist}\itemsep=0pt
+\twocolitem{\windowstyle{wxDP\_SPIN}}{Creates a control without month calendar
+drop down but with spin control-like arrows to change individual date
+components. This style is not supported by the generic version.}
+\twocolitem{\windowstyle{wxDP\_DROPDOWN}}{Creates a control with a month
+calendar drop down part from which the user can select a date.}
+\twocolitem{\windowstyle{wxDP\_DEFAULT}}{Creates a control with default style
+which is the best supported for the current platform.}
+\end{twocollist}
+
 \wxheading{Event handling}
 
 \twocolwidtha{7cm}%
@@ -53,7 +66,7 @@ changes the current selection in the control.}
 \param{const wxDateTime\& }{dt = wxDefaultDateTime},\rtfsp
 \param{const wxPoint\& }{pos = wxDefaultPosition},\rtfsp
 \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
-\param{long}{ style = 0},\rtfsp
+\param{long}{ style = wxDP\_DEFAULT},\rtfsp
 \param{const wxValidator\& }{validator = wxDefaultValidator},
 \param{const wxString\& }{name = ``datectrl"}}
 
@@ -68,7 +81,7 @@ all the parameters.
 \param{const wxDateTime\& }{dt = wxDefaultDateTime},\rtfsp
 \param{const wxPoint\& }{pos = wxDefaultPosition},\rtfsp
 \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
-\param{long}{ style = 0},\rtfsp
+\param{long}{ style = wxDP\_DEFAULT},\rtfsp
 \param{const wxValidator\& }{validator = wxDefaultValidator},
 \param{const wxString\& }{name = ``datectrl"}}
 
index 0d843357b7402b32453f22e1cb74dc84bdf0dba0..1cf93fa1d2f8b23824ef476dd0b7faadb2b175e2 100644 (file)
 
 #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
+};
+
 // ----------------------------------------------------------------------------
 // wxDatePickerCtrl: allow the user to enter the date
 // ----------------------------------------------------------------------------
@@ -33,7 +46,7 @@ public:
                     const wxDateTime& dt = wxDefaultDateTime,
                     const wxPoint& pos = wxDefaultPosition,
                     const wxSize& size = wxDefaultSize,
-                    long style = 0,
+                    long style = wxDP_DEFAULT,
                     const wxValidator& validator = wxDefaultValidator,
                     const wxString& name = wxDatePickerCtrlNameStr);
      */
index 3b30d8ffec30b0bc844ecb8150b5d51bd84069d2..b265e277382b06ab2d8a32fd180fa98ccd400e2b 100644 (file)
@@ -79,6 +79,9 @@ bool wxDatePickerCtrl::Create(wxWindow *parent,
                             long style,
                             const wxString& name)
 {
+    wxASSERT_MSG( !(style & wxDP_SPIN),
+                  _T("wxDP_SPIN style not supported, use wxDP_DEFAULT") );
+
     wxString txt;
     if (date.IsValid())
         txt = date.FormatDate();
index 373d14643910f17f25f215aa9cd66b611335bdc9..5d1ffa61ac0cc237bd46fe7760e194462a05ce27 100644 (file)
@@ -100,9 +100,11 @@ WXDWORD wxDatePickerCtrl::MSWGetStyle(long style, WXDWORD *exstyle) const
 {
     WXDWORD styleMSW = wxDatePickerCtrlBase::MSWGetStyle(style, exstyle);
 
-    // for now this is unconditional, but we should support drop down control
-    // style as well later
-    styleMSW |= DTS_UPDOWN | DTS_SHORTDATEFORMAT;
+    if ( style & wxDP_SPIN )
+        styleMSW |= DTS_UPDOWN;
+    //else: drop down by default
+
+    styleMSW |= DTS_SHORTDATEFORMAT;
 
     return styleMSW;
 }
@@ -226,3 +228,4 @@ wxDatePickerCtrl::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result)
 }
 
 #endif // wxUSE_DATEPICKCTRL
+