]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/datectrl.h
Fix infinite loop in wxHtmlEasyPrinting page break code.
[wxWidgets.git] / interface / wx / datectrl.h
index e3caf9453ce2bc83c9b45ce76810d43d2bbca766..be0239c72c1bb1e0ca034732fd9cb2c9b553caea 100644 (file)
@@ -3,7 +3,7 @@
 // Purpose:     interface of wxDatePickerCtrl
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
@@ -13,8 +13,7 @@
     is a relatively big control, wxDatePickerCtrl is implemented as a small
     window showing the currently selected date. The control can be edited using
     the keyboard, and can also display a popup window for more user-friendly
-    date selection, depending on the styles used and the platform, except
-    PalmOS where date is selected using native dialog.
+    date selection, depending on the styles used and the platform.
 
     It is only available if @c wxUSE_DATEPICKCTRL is set to 1.
 
            style is not supported by the generic version.
     @style{wxDP_DROPDOWN}
            Creates a control with a month calendar drop-down part from which
-           the user can select a date.
+           the user can select a date. This style is not supported in OSX/Cocoa
+           native version.
     @style{wxDP_DEFAULT}
            Creates a control with the style that is best supported for the
-           current platform (currently wxDP_SPIN under Windows and
-           wxDP_DROPDOWN elsewhere).
+           current platform (currently wxDP_SPIN under Windows and OSX/Cocoa
+           and wxDP_DROPDOWN elsewhere).
     @style{wxDP_ALLOWNONE}
            With this style, the control allows the user to not enter any valid
            date at all. Without it - the default - the control always has some
-           valid date.
+           valid date. This style is not supported in OSX/Cocoa native version.
     @style{wxDP_SHOWCENTURY}
            Forces display of the century in the default date format. Without
            this style the century could be displayed, or not, depending on the
-           default date representation in the system.
+           default date representation in the system. This style is not
+           supported in OSX/Cocoa native version currently.
     @endStyleTable
 
+    As can be seen from the remarks above, most of the control style are only
+    supported in the native MSW implementation. In portable code it's
+    recommended to use @c wxDP_DEFAULT style only, possibly combined with @c
+    wxDP_SHOWCENTURY (this is also the style used by default if none is
+    specified).
+
     @beginEventEmissionTable{wxDateEvent}
     @event{EVT_DATE_CHANGED(id, func)}
            This event fires when the user changes the current selection in the
@@ -67,6 +74,11 @@ public:
                      const wxString& name = "datectrl");
 
     /**
+        Create the control window.
+
+        This method should only be used for objects created using default
+        constructor.
+
         @param parent
             Parent window, must not be non-@NULL.
         @param id
@@ -81,8 +93,8 @@ public:
             best size by using the height approximately equal to a text control
             and width large enough to show the date string fully.
         @param style
-            The window style, should be left at 0 as there are no special
-            styles for this control in this version.
+            The window style, see the description of the styles in the class
+            documentation.
         @param validator
             Validator which can be used for additional date checks.
         @param name
@@ -105,6 +117,11 @@ public:
         range is set (or only one of the bounds is set), @a dt1 and/or @a dt2
         are set to be invalid.
 
+        Notice that when using a native MSW implementation of this control the
+        lower range is always set, even if SetRange() hadn't been called
+        explicitly, as the native control only supports dates later than year
+        1601.
+
         @param dt1
             Pointer to the object which receives the lower range limit or
             becomes invalid if it is not set. May be @NULL if the caller is not
@@ -118,22 +135,12 @@ public:
     virtual bool GetRange(wxDateTime* dt1, wxDateTime* dt2) const = 0;
 
     /**
-        Returns the currently selected. If there is no selection or the
-        selection is outside of the current range, an invalid object is
-        returned.
-    */
-    virtual wxDateTime GetValue() const = 0;
-
-    /**
-        Sets the display format for the date in the control. See wxDateTime for
-        the meaning of format strings.
+        Returns the currently entered date.
 
-        @note This function is only available in the generic version of this
-              control. The native version always uses the current system locale.
-
-        @remarks If the format parameter is invalid, the behaviour is undefined.
+        For a control with @c wxDP_ALLOWNONE style the returned value may be
+        invalid if no date is entered, otherwise it is always valid.
     */
-    bool SetFormat(const wxString& format);
+    virtual wxDateTime GetValue() const = 0;
 
     /**
         Sets the valid range for the date selection. If @a dt1 is valid, it