From 5a1b96165088cd5838068c97c1c95b200e86618a Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Wed, 12 Jun 2013 18:52:55 +0000 Subject: [PATCH] adding check for invalid date git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/osx/datetimectrl_osx.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/osx/datetimectrl_osx.cpp b/src/osx/datetimectrl_osx.cpp index 45a49659ff..952ac3e05d 100644 --- a/src/osx/datetimectrl_osx.cpp +++ b/src/osx/datetimectrl_osx.cpp @@ -3,7 +3,7 @@ // Purpose: Implementation of wxDateTimePickerCtrl for OS X. // Author: Vadim Zeitlin // Created: 2011-12-18 -// RCS-ID: $Id: wxhead.cpp,v 1.11 2010-04-22 12:44:51 zeitlin Exp $ +// RCS-ID: $Id$ // Copyright: (c) 2011 Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -28,6 +28,7 @@ #ifndef WX_PRECOMP #endif // WX_PRECOMP +#include "wx/datectrl.h" #include "wx/datetimectrl.h" #include "wx/osx/core/private/datetimectrl.h" @@ -43,7 +44,19 @@ wxDateTimeWidgetImpl* wxDateTimePickerCtrl::GetDateTimePeer() const void wxDateTimePickerCtrl::SetValue(const wxDateTime& dt) { - GetDateTimePeer()->SetDateTime(dt); + if ( dt.IsValid() ) + { + GetDateTimePeer()->SetDateTime(dt); + } + else // invalid date + { + wxASSERT_MSG( HasFlag(wxDP_ALLOWNONE), + wxT("this control must have a valid date") ); + + // TODO setting to an invalid date is not natively supported + // so we must implement a UI for that ourselves + GetDateTimePeer()->SetDateTime(dt); + } } wxDateTime wxDateTimePickerCtrl::GetValue() const -- 2.45.2