#include "wx/wxprec.h"
#if defined(__BORLANDC__)
-#pragma hdrstop
+ #pragma hdrstop
#endif
-#include "wx/defs.h"
-
-// Watcom C++ gives a linker error if this is compiled in.
// With Borland C++, all samples crash if this is compiled in.
-#if wxUSE_OLE && !(defined(__BORLANDC__) && (__BORLANDC__ < 0x520)) && !defined(__CYGWIN10__)
+#if (defined(__BORLANDC__) && (__BORLANDC__ < 0x520)) || defined(__CYGWIN10__)
+ #undef wxUSE_OLE_AUTOMATION
+ #define wxUSE_OLE_AUTOMATION 0
+#endif
+
+#if wxUSE_OLE_AUTOMATION
+
+#ifndef WX_PRECOMP
+ #include "wx/log.h"
+ #include "wx/math.h"
+#endif
#define _FORCENAMELESSUNION
-#include "wx/log.h"
#include "wx/msw/private.h"
#include "wx/msw/ole/oleutils.h"
#include "wx/msw/ole/automtn.h"
-#include "wx/math.h"
#ifdef __WXWINCE__
#include "wx/msw/wince/time.h"
{
// Use dot notation to get the next object
wxString member2(nonConstMember.Left((size_t) ch));
- wxString rest(nonConstMember.Right(nonConstMember.Length() - ch - 1));
+ wxString rest(nonConstMember.Right(nonConstMember.length() - ch - 1));
wxAutomationObject obj;
if (!GetObject(obj, member2))
return false;
{
wxDateTime date( variant.GetDateTime() );
oleVariant.vt = VT_DATE;
-
+
long dosDateTime = date.GetAsDOS();
short dosDate = short((dosDateTime & 0xFFFF0000) >> 16);
short dosTime = short(dosDateTime & 0xFFFF);
-
+
DosDateTimeToVariantTime(dosDate, dosTime, & oleVariant.date);
}
#endif
unsigned short dosDate = 0;
unsigned short dosTime = 0;
VariantTimeToDosDateTime(oleVariant.date, & dosDate, & dosTime);
-
+
long dosDateTime = (dosDate << 16) || dosTime;
wxDateTime date;
date.SetFromDOS(dosDateTime);
break;
case VT_I2:
+ case VT_I4:
case VT_BOOL:
case VT_R8:
case VT_ERROR: // to avoid erroring on an error return from Excel
+ case VT_EMPTY:
// no work for these types
break;
#endif
-#endif // wxUSE_OLE && !(defined(__BORLANDC__) && (__BORLANDC__ < 0x520)) && !defined(__CYGWIN10__)
+#endif // wxUSE_OLE_AUTOMATION