X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c01359d9d5a834a93c0b68425aa8fefdd88124ee..bb90a3e6fddff7169d6020b9b22e1f57c09f8fd9:/src/msw/datectrl.cpp diff --git a/src/msw/datectrl.cpp b/src/msw/datectrl.cpp index dc0a79bd29..2af227ee9d 100644 --- a/src/msw/datectrl.cpp +++ b/src/msw/datectrl.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: msw/datectrl.cpp +// Name: src/msw/datectrl.cpp // Purpose: wxDatePickerCtrl implementation // Author: Vadim Zeitlin // Modified by: @@ -23,23 +23,23 @@ #pragma hdrstop #endif +#if wxUSE_DATEPICKCTRL + #ifndef WX_PRECOMP + #include "wx/app.h" + #include "wx/intl.h" + #include "wx/dcclient.h" + #include "wx/msw/wrapwin.h" + #include "wx/msw/wrapcctl.h" + #include "wx/msw/private.h" #endif -#if wxUSE_DATEPICKCTRL - #include "wx/datectrl.h" -#include "wx/app.h" -#include "wx/intl.h" #include "wx/dynlib.h" #define _WX_DEFINE_DATE_EVENTS_ #include "wx/dateevt.h" -#include "wx/msw/wrapwin.h" -#include "wx/msw/wrapcctl.h" -#include "wx/msw/private.h" - // apparently some versions of mingw define these macros erroneously #ifndef DateTime_GetSystemtime #define DateTime_GetSystemtime DateTime_GetSystemTime @@ -104,30 +104,41 @@ wxDatePickerCtrl::Create(wxWindow *parent, static bool s_initDone = false; // MT-ok: used from GUI thread only if ( !s_initDone ) { +#ifndef __WXWINCE__ if ( wxApp::GetComCtl32Version() < 470 ) { wxLogError(_("This system doesn't support date picker control, please upgrade your version of comctl32.dll")); return false; } +#endif #if wxUSE_DYNLIB_CLASS INITCOMMONCONTROLSEX icex; icex.dwSize = sizeof(icex); icex.dwICC = ICC_DATE_CLASSES; - wxDynamicLibrary dllComCtl32(_T("comctl32.dll"), wxDL_VERBATIM); - - typedef BOOL (WINAPI *ICCEx_t)(INITCOMMONCONTROLSEX *); - wxDYNLIB_FUNCTION( ICCEx_t, InitCommonControlsEx, dllComCtl32 ); + wxDynamicLibrary dllComCtl32( +#ifdef __WXWINCE__ + _T("commctrl.dll") +#else + _T("comctl32.dll") +#endif + , wxDL_VERBATIM); - if ( pfnInitCommonControlsEx ) + if ( dllComCtl32.IsLoaded() ) { - (*pfnInitCommonControlsEx)(&icex); - } + typedef BOOL (WINAPI *ICCEx_t)(INITCOMMONCONTROLSEX *); + wxDYNLIB_FUNCTION( ICCEx_t, InitCommonControlsEx, dllComCtl32 ); - s_initDone = true; -#endif + if ( pfnInitCommonControlsEx ) + { + (*pfnInitCommonControlsEx)(&icex); + } + + s_initDone = true; + } +#endif } @@ -314,6 +325,7 @@ wxDatePickerCtrl::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result) switch ( hdr->code ) { case DTN_DATETIMECHANGE: + { NMDATETIMECHANGE *dtch = (NMDATETIMECHANGE *)hdr; wxDateTime dt; if ( dtch->dwFlags == GDT_VALID ) @@ -325,10 +337,10 @@ wxDatePickerCtrl::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result) *result = 0; return true; } + } } return wxDatePickerCtrlBase::MSWOnNotify(idCtrl, lParam, result); } #endif // wxUSE_DATEPICKCTRL -